728x90
import math
M, N = map(int, input().split())
arr = []
def isPrime(num):
if num == 1:
return False
elif num == 2:
return True
else:
for j in range(2, int(math.sqrt(num)) + 1):
if num % j == 0:
return False
return True
for i in range(M, N+1):
if isPrime(i):
print(i)
간단한 문제... 라고 생각했는데 계속 시간초과가 떴다.
이를 해결하기 위해서는 '소수 구하는' 방법을 제곱근까지만 나눠서 증명하도록 해야했다.
그를 위해서는 math.sqrt(num)같은 함수가 있다고 한다.. 알아두자.
728x90
'알고리즘 공부(C++)' 카테고리의 다른 글
11650 좌표 정렬하기 (0) | 2022.08.16 |
---|---|
10845 큐 (0) | 2022.08.16 |
9012 괄호 (0) | 2022.08.16 |
17478 재귀함수가 뭔가요? (0) | 2022.08.14 |
1026 보물 (0) | 2022.08.13 |