설명
http://euler.synap.co.kr/ 7번 문제입니다.문제
소수를 크기 순으로 나열하면 2, 3, 5, 7, 11, 13, ... 과 같이 됩니다.이 때 10,001번째의 소수를 구하세요.
코드
파이썬 2.7
1 2 3 4 5 6 7 8 9 10 11 12 | def is_sosu(n): for i in range(2,n): if n%i == 0: return 0 return 1 count = 0 for i in range(2,1000000): if is_sosu(i): count+=1 if count == 10001: print i | cs |
할말
별다른 알고리즘을 사용하지 않아서 1~2분 걸립니다.2의배수 3의배수 등을 걸러내면 속도가 조금 줄어듭니다.