//在输入前使用,降低时间复杂度
memset(a,0,sizeof(a));
a[0]=a[1]=1;//真值非素数
for(int i=2;i*i<=max;i++)
{
if(!a[i])
for(int j=i+i;j<=max;j+=i)//是i的倍数便不是素数
{
a[j]=1;
}
}
素数筛法
最新推荐文章于 2022-03-05 19:45:58 发布
//在输入前使用,降低时间复杂度
memset(a,0,sizeof(a));
a[0]=a[1]=1;//真值非素数
for(int i=2;i*i<=max;i++)
{
if(!a[i])
for(int j=i+i;j<=max;j+=i)//是i的倍数便不是素数
{
a[j]=1;
}
}