본문 바로가기

Programming [Python]/백준 알고리즘 솔루션

#152 백준 파이썬 [1929] 소수 구하기

https://www.acmicpc.net/problem/1929

 

#Solution

에라토스테네스의 체로 풀어준다. 시간초과가 나지 않으니 아직까진 잘 되는 소수 프로그래밍인듯.

#소수리스트 만들어주기
prime_ox = [True for _ in range(1000000)]

for i in range(2, int(1000000 ** 0.5)):
    if prime_ox[i] == True:
        for j in range(i+i, 1000000, i):
            prime_ox[j] = False 

prime_list = [i for i, j in enumerate(prime_ox) if j == True and i >=2 ]


#소수 출력하기
M, N = map(int, input().split())

for i in prime_list:
    if i < M :
        continue
    elif N >= i >= M:
        print(i)
    else:
        break