지나가던 개발자
[Python] 백준 15965번(K번째 소수) 문제 풀이 본문
n = int(input())
A = [False, False] + [True] * 7368788
Primes = []
for i in range(2, 7368788):
    if A[i]:
        Primes.append(i)
        for j in range(i+i, 7368788, i):
            A[j] = False
print(Primes[n-1])
에라토스테네스의 체 알고리즘을 사용했다. (덕분에 메모리가 145980KB...)
50만번째 소수는 7368788이다.
'PS > Python' 카테고리의 다른 글
| [Python] 백준 24175번(Tokyo2020) 문제 풀이 (1) | 2022.10.25 | 
|---|---|
| [Python] 백준 13985번(Equality) 문제 풀이 (0) | 2022.10.24 | 
| [Python] 백준 4355번(서로소) 문제 풀이 (1) | 2022.10.22 | 
| [Python] 백준 6992번(Arithmetic Sequence) 문제 풀이 (0) | 2022.10.22 | 
| [Python] 백준 1546번(평균) 문제 풀이 (0) | 2022.10.21 | 
			  Comments
			
		
	
               
           
					
					
					
					
					
					
				
 
								 
								 
								