线性筛法打表素数
欧拉函数 gcd(x,n)=1的个数 x从1到n
int eular(int n){
int ret=1,i;
for(i=2;ii<=n;i++)
if(n%i==0){
n/=i;
ret=i-1;
while(n%i==0)
n/=i,ret*=i;
}
if(n>1)
ret*=n-1;
return ret;
}
模板
最新推荐文章于 2024-04-08 17:43:30 发布
线性筛法打表素数
欧拉函数 gcd(x,n)=1的个数 x从1到n
int eular(int n){
int ret=1,i;
for(i=2;ii<=n;i++)
if(n%i==0){
n/=i;
ret=i-1;
while(n%i==0)
n/=i,ret*=i;
}
if(n>1)
ret*=n-1;
return ret;
}