欧拉函数:
Phi(n)=n(1-1/p1) (1-1/p2)….. (1-1/pk)
其中p1, p2 ,pk是n的所有素数因子
Phi(n):所有小于等于n的且与n互素的数的个数
#include<stdio.h> long long eular(long long n){ long long t=n,i; for(i=2;i*i<=n;i++){ if(n%i==0){ while(n%i==0){ n/=i; } t=t/i*(i-1); } } if(n>1) t=t/n*(n-1); return t; } int main(){ long long n;//不能用int型,否则会TLE,不知为何 int t; scanf("%d",&t); while(t--){ scanf("%lld",&n); printf("%lld\n",eular(n)); } return 0; }