素数筛相关
求一个数的素因数
cnt=0; //素因子个数
for(int i=2;i*i<=n;i++)//这里是i²啊!
{
if(n%i==0)
{
++cnt;
p[cnt]=i;//p数组存素因子
num[cnt]=0;//num数组:每个素因子的指数,此处是初始化为0
while(n%i==0)
{
++num[cnt];
n/=i;
}
}
}
if(n>1)
{
++cnt;
p[cnt]=n;
num[cnt]=1;
}

浙公网安备 33010602011771号