数论总结二

来源:互联网 发布:reveal.js echarts 编辑:程序博客网 时间:2024/06/09 23:34

这部分大概是关于欧拉函数的
但内容有点少,然后以后再补题
要是我无聊就把欧拉定理的证明给补了……

五 欧拉函数
[既然上面求逆元用到了这个东西]
欧拉函数φ(n)表示1到n中和n互质的数的个数 定义φ(1)=1
欧拉函数的一些性质:
1.在数论的定义中,欧拉函数为积性函数,即φ(n*m)=φ(n)*φ(m)(gcd(n,m)=1)

2.对于质数p
(1) 若p|a 则φ(a*p)=φ(a)*p
(2)else φ(a*p)=φ(a)*(p-1)
证明:我也不太会

3.设小于n的所有与n互质的数的和为sum,则sum=n*φ(n)/2;
证明:如果gcd(n,i)=1,则gcd(n,n-i)不能大于1,所以与n互质的数成对存在,且和为n)

4.若p为质数,且n=p的k次方
则φ(n)=p的k次方-p的k-1次方=(p-1)*p的k-1次方
证明:除了p的倍数,其他都跟n互质

求法:
1.线筛 利用积性函数的性质 时间复杂度为O(n)
此处应该有代码
2.对于求解单个欧拉函数值,可枚举所有质因子 时间复杂度为O(sqrt(n))
具体操作:这个时候还要应用到欧拉函数的一个性质
φ(n)=n*(1-1/p1)(1-1/p2)…*(1-1/pn) 其中p1,p2,…,pn为n的所有质因子,n是不为0的整数
所以就可以愉快地求解啦

欧拉定理
若n,a为正整数,且gcd(n,a)=1 则a的φ(n)次方≡1(mod n)
证明:这个不想打了 留给以后(flag++)
费马小定理:当n为质数p时,a的p-1次方≡1mod(p)
(这个用欧拉定理很好证,当p为质数时,φ(p)=p-1)

原创粉丝点击