码迷,mamicode.com
首页 > 编程语言 > 详细

40026118素数的个数(C++)

时间:2016-10-15 13:54:54      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:

#include<iostream>
#define LL long long
#define maxn 1000010
using namespace std;
LL read()
{
LL x=0,f=1;
char c=getchar();
while(!isdigit(c)){if(c==‘-‘)f=-1;c=getchar();}
while(isdigit(c)){x=x*10+c-‘0‘;c=getchar();}
return x*f;
}
bool prime[maxn];
LL a;
void prime_table()
{
for(int i=2;(LL)i<=a;i++) prime[i]=1;
for(int i=2;(LL)i*i<=a;i++)
if(prime[i]) for(LL j=i*i;j<=a;j+=i) prime[j]=0;
return;
}

int main()
{
a=read();
prime_table();
int cnt=0;
for(int i=2;i<=a;i++)if(prime[i]) cnt++;
printf("%d\n", cnt);
//system("pause");
return 0;
}

40026118素数的个数(C++)

标签:

原文地址:http://www.cnblogs.com/DZRDerek/p/5963007.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!