오늘의 문제
키워드
소수 구하기, 에라토스테네스의 체
나의 풀이
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
M, N = map(int, input().split())
## 수정 후 정답
for i in range(M, N+1):
## 소수 검사
if i >= 2 :
for j in range(2, int(i ** 0.5) + 1):
if i % j == 0:
break
else:
print(i)
## [수정 전 오답] 시간초과
num = N
while num <= M :
isPrime = True
for i in range(2, num) :
if num % i == 0 :
isPrime = False
break
if isPrime :
print(num)
num += 1
<\div>
회고
몇개월 전에 프로그래머스에서 ‘소수 찾기’ 문제를 풀면서 처음 ‘에라토스테네스의 체’ 개념을 접했는데, 한동안 코테 준비를 안했더니 개념은 잊어버리고 그걸 사용해야 한다는 것..만 아는 사람이 되었다.
Comments powered by Disqus.