欧拉函数
欧拉函数
一直没研究太懂,我想这下就很好懂了
欧拉函数定义
在数论中,对正整数n,欧拉函数φ(n)是小于或等于n的正整数中与n互质的数的数目。此函数以其首名研究者欧拉命名,它又称为φ函数(由高斯所命名)或是欧拉总计函数(totient function,由西尔维斯特所命名)。
例如φ(8) = 4,因为1,3,5,7均和8互质。
标准分解式
标准分解式:将质因数分解的结果,按照质因数大小,由小到大排列,并将相同质因数的连乘积,以指数形式表示,此种表示法称为标准分解式。
第一个性质中,在不大于\(p^n\)的正整数中,不与之互质的只有p的整数,p,2p,3p........一共有\(p^n-1\)个,因此得证第一个式子
第二个性质的话显然合理
第三个性质则是欧拉函数属于积性函数的性质。
则经过推理最后
我们得到了公式
先将正整数进行质因数分解
然后由于两两互质和欧拉函数的积性函数的性质
因此既可以将这个公式变化为:
最后就可以得到
最后就可以得到整个欧拉函数了
这里给出欧拉函数以\(\sqrt{n}\)的的复杂度求解正整数的欧拉函数
1 | int phi(int n) |
欧拉函数也可以与筛法进行结合,比如利用埃式筛就可以顺便求解出1-n的欧拉函数
1 | void init(int n) |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Totoroの旅!
评论