[数论]线性筛数法球孪生素数 [codevs 2046]

来源:互联网 发布:跟阿铭学linux第三版 编辑:程序博客网 时间:2024/06/07 10:24
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<cmath>#include<queue>#include<stack>#include<vector>#include<string>#include<assert.h>using namespace std;const int maxn = 10000000;int prime[maxn],flag[maxn];int n,cnt=0;int main(){scanf("%d",&n);for(int i=2;i<=n;i++){if(!flag[i])prime[cnt++]=i;for(int j=0;j<cnt&&prime[j]*i<=n;j++){flag[prime[j]*i]=1;if(i%prime[j]==0)break;}}int ans=0;for(int i=0;i<cnt-1;i++){if(prime[i+1]-prime[i]<3)ans++;}cout<<ans;return 0;}

1 0
原创粉丝点击