仅判断
bool prime[N];
int sum[N];
void init()
{
for(int i=0;i<N;i++)
{
prime[i]=1;
}
}
void dabiao()
{
init();
prime[0]=prime[1]=0;//=1的为素数
for(ll i =2;i<N;i++)
{
if(prime[i])
{
for(ll j=2*i;j<N;j+=i)
{
prime[j]=0;
}
}
}
}
得到素数数组
const int N=1e6+7;
bool prime[N];
ll p[N];
int k=0;
void init()
{
for(int i=0;i<N;i++)
{
prime[i]=0;
}
}
void dabiao()
{
init();
prime[0]=prime[1]=1;//=1的为非素数
for(ll i = 2 ; i < N ; i++)
{
if(!prime[i])
{
p[k++]=i;
for(ll j=2*i;j<N;j+=i)
{
prime[j]=1;
}
}
}
}