线性筛法求素数模板

void Prime(int n)
{
    register int i,j,k;
    for(i=2;i<=n;i++)
    {
        if(!mindiv[i])prime[++tot]=mindiv[i]=i;
        for(j=1;j<=tot&&(k=prime[j]*i)<=n;j++)
        mindiv[k]=prime[j];
    }
}

其实重点就5行

你可能感兴趣的:(欧拉线性筛)