欧拉phi函数与欧拉定理

来源:互联网 发布:dnf淘宝买游戏币安全吗 编辑:程序博客网 时间:2024/04/29 21:03

欧拉phi函数

欧拉phi(x)函数等于不超过x且和x互素的整数个数。

欧拉phi函数证明:




附代码:

#include<stdio.h>#include<string.h>#include<math.h>#define MAXN 1010int phi[MAXN];int euler_phi(int n){int m=sqrt(n+0.5);int ans=n;for(int i=2;i<=m;i++){if(n%i==0)ans=ans/i*(i-1);while(n%i==0)n/=i;}if(n>1)ans=ans/n*(n-1);return ans;}void phi_table(int n)//打表{memset(phi,0,sizeof(phi));phi[1]=1;for(int i=2;i<=n;i++){if(!phi[i]){for(int j=i;j<=n;j+=i){if(!phi[j])phi[j]=j;phi[j]=phi[j]/i*(i-1);}}}}int main(){int n;while(scanf("%d",&n),n){printf("%d\n",euler_phi(n));phi_table(n);}return 0;}


欧拉定理




费马小定理是欧拉定理的特殊情况。

 假如p是质数,且gcd(a,p)=1,那么 a^(p-1) ≡1mod p)。即:假如a整数,p质数,且a,p互质(即两者只有一个公约数1),那么a的(p-1)次方除以p的余数恒等于1


求小于等于N的与N互质的数的和

ans=N*phi(N)/2;


0 0