题目链接:http://codeup.cn/problem.php?cid=100000591&pid=1
题目描述
Output the k-th prime number.
输入
k≤10000
输出
The k-th prime number.
样例输入
10
50
样例输出
29
229
代码
#include<stdio.h>
const int maxn = 110000;
int p[maxn] = {0};
int main() {
int n, i;
while(scanf("%d", &n) != EOF) {
int num = 0;
for(i = 2; i < maxn; i ++) {
if(p[i] == 0) {
num++;
if(num == n)
break;
for(int j = i + i; j < maxn; j += i)
p[j] = 1;
}
}
printf("%d\n", i);
}
return 0;
}
【注】:maxn 不能太大,否则会时间超限;也不能太小,否则会找不到第10000个。