1 int euler(int x) 2 { 3 int s = x; 4 for(int i= 2 ; i*i <= x ; i++) 5 { 6 if(x%i==0) 7 { 8 s-=s/i; 9 while(x%i==0)10 x/=i;11 }12 }13 if(x!=1)14 s-=s/x;15 return s;16 }
本文共 307 字,大约阅读时间需要 1 分钟。
1 int euler(int x) 2 { 3 int s = x; 4 for(int i= 2 ; i*i <= x ; i++) 5 { 6 if(x%i==0) 7 { 8 s-=s/i; 9 while(x%i==0)10 x/=i;11 }12 }13 if(x!=1)14 s-=s/x;15 return s;16 }
转载于:https://www.cnblogs.com/shangyu/p/3676881.html