const int N(1000000);
int a[N+10];
void euler()
{
for(int i=2;i<=N;i++)
{
if(!a[i])
for(int j=i;j<=N;j+=i)
{
if(!a[j])
a[j]=j;
a[j]=a[j]/i*(i-1);
}
}
}
欧拉函数打表(备忘)
最新推荐文章于 2021-10-04 20:52:13 发布
const int N(1000000);
int a[N+10];
void euler()
{
for(int i=2;i<=N;i++)
{
if(!a[i])
for(int j=i;j<=N;j+=i)
{
if(!a[j])
a[j]=j;
a[j]=a[j]/i*(i-1);
}
}
}