//求欧拉函数值
int phi(int x)
{
int ans=x;
for(int i=2;i*i<=x;i++)
{if(x%i==0)
{
ans=ans/i*(i-1);
while(x%i==0) x/=i;
}
}
if(x>1) ans=ans/x*(x-1);
return ans;
}
//筛法求欧拉函数
void init()
{
for(int i=2;i<N;i++)
if(!phi[i])
for(int j=i;j<N;j+=i)
{
if(!phi[j]) phi[j]=j;
phi[j]=phi[j]/i*(i-1);
}
}