실패이유
: 시간초과
small, big = map(int, input().split())
for num in range(small, big + 1):
prime_check = True
if num == 1:
prime_check = False
else:
for i in range(2, int(num ** 0.5) + 1): # 제곱근만큼만 검사하여 시간을 절약
if num % i == 0:
prime_check = False
break
if prime_check:
print(num)
int(num ** 0.5) + 1
- 2 ~ num 까지 반복하면서 소수를 체크하는 것은 시간초과가 발생한다.
- 2 ~ (num의 제곱근) 까지 반복하면서 소수를 효율적으로 체크할 수 있다.