游客 Signup | Login
中文 | En

3609 - 找素数(蓝桥杯2012决赛第1题)

素数就是不能再进行等分的整数。比如:7,11。

而9不是素数,因为它可以平分为3等份。

一般认为最小的素数是2,接着是3,5,...

请问,第100002(十万零二)个素数是多少?
请注意:“2” 是第一素数,“3” 是第二个素数,依此类推。

 

Input

Output

Examples

Input


                

Output


                

Solution C

#include<stdio.h>
#include<math.h>
int main()
{
printf("1299743");
}
 

Solution C++

#include<iostream>
#include<algorithm>
using namespace std;
int p[4]={1,4,9,9};
int isprime(int n)
{
	int i;
	for(i=2;i*i<=n;i++)
	{
		if(n%i==0) return 0;
	}
	return 1;	
}
int main()
{
	int cnt=0;
	int i;
	for(i=2;cnt!=100002;i++)
	{
		if(isprime(i))	
			cnt++;
	}
	cout<<i-1;
	return 0;
}

Time Limit 1 second
Memory Limit 128 MB
Discuss Stats
上一题 下一题