반응형

파이썬 12

[python] 1244. 스위치 켜고 끄기

문제: https://www.acmicpc.net/problem/1244 풀이 이번 문제는 남자인 경우는 쉽게 풀렸지만,여자인 경우에서 자꾸 에러가 났습니다.  이는 남자일 때는 해당 숫자의 배수를 뒤집으면 되는 문제이지만 (for문의 step을 num만큼)여자일 때는 대칭인 경우와 비대칭인 경우를 고려해주어야 하기 때문입니다. 일단 문제는 인덱스가 1부터 시작하는데, 배열은 인덱스가 0부터 시작하기 때문에 가장 앞에 [-1]을 추가해서 인덱스를 맞춰주었습니다. 핵심은 여자인 경우의 대칭과 비대칭일 때의 코드를 작성하는 것입니다. 나는 처음에 cnt를 +1해주는 방식으로i = i+2*cnt일 때와 i != i+2*cnt (일치/불일치)로 코드를 짰습니다. 그러나 index error 발생으로 코드를 리팩..

[python] 2960. 에라토스테네스의 체

문제: https://www.acmicpc.net/problem/2960 풀이  이번 문제는 어렵지 않았지만 코드가 조금 지저분하게 작성됐습니다. 시간 제한은 1초로, 이중 for문으로 충분한 시간이라 이중 for문으로 구현했습니다. 그러나, cnt를 셀 때마다 k랑 맞는지 확인하고 break를 걸어주어야 하는 부분 때문에 코드가 지저분해졌고 'if ~' 부분을 반복해서 작성했습니다.  따라서 방향성을 바꿔서 깔끔한 코드로 수정했습니다. 또한 이중for문을 완전히 탈출할 때 if문을 두 번 쓰지 않고, 하단의 코드처럼 else: continue break로 작성해도 됨을 배웠습니다.  - 지저분한 코드n, k = map(int, input().split())num_list = [i for i in ran..

728x90
반응형