码迷,mamicode.com
首页 > 其他好文 > 详细

欧拉函数

时间:2019-06-09 00:34:12      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:欧拉   inf   计算   欧拉函数   png   while   info   技术   src   

互质:任意自然数a, b,若gcd(a, b) = 1,则a,b互质。

欧拉函数:1~N中与N互质的数的个数被称为欧拉函数,记为φ(N)。

若在算术基本定理中,技术图片

 

公式的证明用到的思想被称为容斥定理。在N的全部质因子上用容斥定理,即可得到1~N中不与N含有任何共同质因子的数的个数,也就是与N互质的数的个数。

 

根据计算式,只需要分解质因数,即可求出欧拉函数。

 1 int phi(int x){
 2     int ans=x;
 3     for(int i=2; i*i<=x; i++){
 4         if(x % i == 0){
 5             ans = ans * (i-1) / i;
 6             while(x % i == 0) x /= i;
 7         }
 8     }
 9     if(x > 1) ans = ans * (x-1) / x;
10     return ans;
11 }

 

欧拉函数

标签:欧拉   inf   计算   欧拉函数   png   while   info   技术   src   

原文地址:https://www.cnblogs.com/hnoi/p/10992072.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!