数论-欧拉函数
Posted sxq-study
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数论-欧拉函数相关的知识,希望对你有一定的参考价值。
欧拉函数:
时间复杂度:sqrt(n)
代码:
1 #include <iostream> 2 using namespace std; 3 4 int main(){ 5 int n;cin >> n; 6 while(n --){ 7 int a;cin >> a; 8 int res = a; 9 for(int i = 2;i <= a/i;++i){ 10 if(a % i == 0){ 11 res = res / i * (i - 1);//公式:i 分之 i - 1 12 while(a % i == 0)a /= i; 13 } 14 } 15 if(a > 1)res = res / a * (a - 1); 16 cout << res << endl; 17 } 18 return 0; 19 }
end
以上是关于数论-欧拉函数的主要内容,如果未能解决你的问题,请参考以下文章
数论之旅4---欧拉函数的证明及代码实现(我会证明都是骗人的╮( ̄▽ ̄)╭)