警示后人
查看原帖
警示后人
762588
Edgebright楼主2023/11/16 15:48

如果你多筛了点质数(比如说筛到了第21个),而数组又是顶着开的,那么你在处理每个数的时候千万不要去看所有质数,不然状态会爆空间RE

int getnum(int x)
{
    int res = 0;
    for(int i = 1; i <= 20; ++i)//如果你数组顶着开,还多筛了质数,这里千万不要写成 countprimes
    {
        if(x % p[i] == 0)
        {
            res |= (1LL << (i - 1)); 
        }
    }
    return res;
}
2023/11/16 15:48
加载中...