
A prime number is a natural number which has exactly two distinct natural number divisors: 1 and itself. The first prime number is 2. Can you write a program that computes the nth prime number, given a number n ≤ 10000?
한국어 번역
1과 자기 자신 만을 약수로 가지는 자연수를 소수라고 한다.
첫번째 줄에는 n이 입력되며 n이 10000 이하일 때 n번째 소수를 계산하는 프로그램을 작성하시오. (단, 첫번째 소수는 2)
The input contains just one number which is the number n as described above. The maximum value of n is 10000.
한국어 번역
첫번째 줄에 숫자 n이 입력된다. n ≤ 10000
예제 입력 1
30
예제 출력 1
113
에라토스테네스의 체를 사용했을 때 x가 104730일 때 소수가 약 10000개 나오므로 에라토스테네스의 체를 사용해 소수를 약 10000개를 리스트에 저장한 후 n을 입력받아 소수를 저장한 리스트의 n-1번째를 출력해주었다.
x = 104730
a = [0,0] + [1] * x
result = []
for i in range(2,x) :
if a[i] == 1 :
result.append(i)
for j in range(i*2,x,i) :
a[j] = 0
n = int(input())
print(result[n-1])