欧拉函数

欧拉函数设1~N个数,其中与N互质的数的个数被称为欧拉函数,记为Φ(n).在基本算数定理中,N=p1c1p2c2pmcm(不要问我为什么,我也不知道23333)Φ(n)=N*p1-1/p1*p2-1/p2*…..*pm-1/pm(其中p为1~N中的质数)所以根据欧拉函数的计算式,我们如何计算

大家好,欢迎来到IT知识分享网。欧拉函数"

欧拉函数的定义

设1~N个数,其中与N互质的数的个数被称为欧拉函数,记为Φ(n).

在基本算数定理中,N=p1 c1p2 c2pm cm(不要问我为什么,我也不知道23333)

Φ(n)=N*p1-1/p1*p2-1/p2*…..*pm-1/pm(其中p为1~N中的质数)

所以根据欧拉函数的计算式,我们如何计算实现欧拉函数呢,这就可以在质因数分解是顺便求出来

代码如下

 

int phi(int n)
{
    int ans=n;
    for(int i=1;i<=sqrt(n);i++)
    {
        if(n%i==0)
        {
                ans=ans*(i-1)/i;
                while(n%i==0) n=n/i;
        }
        if(n>1) ans=ans*(i-1)/i;
        return ans;
    }    
}

 

性质

1.任意n>1,1~n中与n互质的数的和为n*Φ(n)/2

2.若a与b互质,则Φ(a*b)=Φ(a)*Φ(b)

证明

因为gcd(n,x)=gcd(n,n-x),所以与n不互质的数是成对出现的,平均值为n/2,所以互质的数也是n/2(证1)

积性函数

当a,b互质时,有f(a*b)=f(a)*f(b),则称函数f为积性函数

欧拉推论

如果正整数a,n互质,则对于任意整数b,有a的b次方等于a的b次方modΦ(n),相当于a的b次方对n取模(应该是这样子的)

那么就可以转化成底数对p(质数取模),指数对Φ(p)取模

 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/34604.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信