【题目描述】
蒜头君有一个正整数 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; }
返回目录:题解目录