数论 欧拉函数

欧拉函数在解题的作用在于求一个数的质因子的个数,例如φ(24)=8,因为1, 5, 7, 11, 13, 17, 19, 23均和 24 互质。欧拉函数的公式为:

Φ(N)=N(1-1/P1)(1-1/P2)(1-1/P3)....(1-1/Pn);

P1,P2,P3……都是N的质因子。

可以快速求出欧拉函数的值(a为N的质因素)  若( N%a ==0&&(N/a)%a ==0)则有:E(N)= E(N/a)a;  若( N%a ==0&&(N/a)%a !=0)则有:E(N)= E(N/a)(a-1);

欧拉函数的线性打表法:欧拉函数线性打表法:


int Eular(int x){
    int ans=1;
    for(int i=2;i*i<=x;i++){
        if(x%i==0){
            x/=i;
            ans*=(i-1);
            while(x%i==0){
                x/=i;
                ans*=i;
            }
        }
    }
    if(x>1)
        ans*=(x-1);
    return ans;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Base64 base64是一种基于64个可打印字符来表示二进制数据的表示方法.严格来说它只能算作一种编码方式.B...
    miku酱啦阅读 4,943评论 0 3
  • 这是去年12月在CSDN写的一篇加密算法文章 现在决定在简书写博客 移植过来方便复习再理解。 最近算法课老师要求小...
    icecrea阅读 5,135评论 1 1
  • 影 3月12日 准备G中,感觉有太多东西要学,时间也不够用,很是有压迫感。看帖子时提到homeless to Ha...
    CiCi野良阅读 1,722评论 0 0
  • 我们曾经是那样张扬 峥嵘岁月里放飞梦想 可歌可泣的快意人生 而今把昨日悄悄埋藏 我如今只剩下了彷徨 放逐着旧梦里的...
    东山明月阅读 1,859评论 4 5
  • 下午儿子问我发个红包给他参加他朋友的生日聚会,我问他需要多少,他说:“三十吧!”我想也没想就发给他了,并祝他...
    suhui440阅读 3,437评论 0 51