【题目描述】
蒜头君有一个正整数 n,他想求第 n小的质数。
【输入格式】
一个不超过 10000的正整数 n。
【输出格式】
第 n 小的质数。
输出时每行末尾的多余空格,不影响答案正确性
【样例输入】
10
【样例输出】
29
【题解说明】
从第一个开始列举,前n个就第n小的那个。第一个最小,第二个次小
#include<cstdio>
#include<cmath>
int isprime(int m) { //判断一个数是不是质数
int i;
for(i=2; i<=sqrt(m); i++)
if(m%i==0)
return 0;
return 1;
}
int main() {
int n,sum=0;//定义第n小,质数累加
scanf("%d",&n);
for(int i=2; ;i++)
{
if( isprime(i)==1)
sum++;
if(sum==n) //等于第n小的时候输出
{
printf("%d\n",i);
return 0;
}
}
return 0;
}
返回目录:题解目录