#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
const int maxn=1000010;
bool isP[maxn]={false};
int numP[maxn];
int count1=1;
void findP(int n)
{
for (int i=2;i<=n;i++)
{
if(isP[i]==false)
{
numP[count1++]=i;
for (int j=i+i;j<n;j+=i)
{
isP[j]=true;
}
}
}
}
int main()
{
int n,num=0;
cin>>n;
findP(n);
for (int i=2;i<count1;i++)
{
if(numP[i]-numP[i-1]==2)
num++;
}
printf("%d",num);
}
B1007 素数对猜想 (20) 素数 埃式筛法
最新推荐文章于 2024-01-10 20:11:06 发布
本文介绍了一个C++程序,该程序首先使用埃拉托斯特尼筛法找到指定范围内的所有素数,并存储这些素数。然后,程序遍历存储的素数列表,计算并输出孪生素数对的数量。孪生素数是指相差为2的一对素数。
1690

被折叠的 条评论
为什么被折叠?



