void phi_table(){
phi[1]=1;
fo(i,2,mn){//从2开始计算
if (!phi[i]){//等价于是质数
pri[++pt]=i;
phi[i]=i-1;
}
fo(j,1,pt){ //枚举添加的小质数
te=i*pri[j];
if (te>mn)
break;
if (i%pri[j]==0){ //重复的质数
phi[te]=phi[i]*pri[j];
break;
}
phi[te]=phi[i]*(pri[j]-1);//不同的质数
}
}
}
线性筛法求phi函数表
最新推荐文章于 2023-04-28 18:06:13 发布
本文介绍了一个用于计算欧拉函数的算法实现。该算法通过筛选质数并利用这些质数来计算一系列整数的欧拉函数值。特别地,它详细展示了如何通过检查与现有质数的倍数关系来高效地确定一个数是否为质数,并进而计算其欧拉函数。

1284

被折叠的 条评论
为什么被折叠?



