第 n 小的质数
题目描述
输入一个正整数 n n n,求正整数范围中第 n n n 小的质数。
输入格式
一个不超过 30000 30000 30000 的正整数 n n n。
输出格式
第 n n n 小的质数。
样例 #1
样例输入 #1
10
样例输出 #1
29
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<stdbool.h>
bool num[400000];
int main(){
int i,j;
for(i=2;i*i<=400000;i++){
for(j=2;j*i<=400000;j++){
num[i*j]=1;
}
}
long long n;
scanf("%lld",&n);
i=0;
j=2;
while(j<=400000){
if(num[j]==0){
i++;
if(i==n){
printf("%lld\n",j);
break;
}
}
j++;
}
return 0;//csdn 旺旺的碎冰冰~
}
//注意是第30000个素数,而不是在30000的范围内的素数,这是坑点