1.积性函数——欧拉函数——欧拉函数性质——欧拉函数模板:
#include<bits/stdc++.h>
using namespace std;
int Euler(int n)
{
int ans=n;
for(int i=2;i<=sqrt(n);i++)
{
if(n%i==0)
{
ans=ans/i*(i-1);//欧拉函数性质三
while(n%i==0)
n=n/i;
}
}
if(n!=1)
ans=ans/n*(n-1);
return ans;
}
int main()
{
int n;
cin>>n;
printf("%d\n",Euler(n));
return 0;
}