标签:for register code reg return color 范围 质数 欧拉函数
1 inline int Eular(int n) // [1,n]范围内与n互质的数 2 { 3 int last, num; 4 last = num = n; 5 for(register int i = 2; i * i <= n; i++) 6 { 7 if(!(last % i)) 8 { 9 while(!(last % i)) last /= i; 10 num /= i; 11 num *= (i - 1); 12 // num *= (i - 1) / i 13 // num *= 1 - 1 / i 14 } 15 } 16 if(last > 1) // 还有一个质数因子 17 { 18 num /= last; 19 num *= (last - 1); 20 } 21 return num; 22 }
标签:for register code reg return color 范围 质数 欧拉函数
原文地址:https://www.cnblogs.com/kcn999/p/10015290.html