欧拉函数
1 定义
φ(n) 表示小于等于n的正整数中与n互质的数的个数,例如φ(8)=4因为在小于等于8的正整数中1,3,5,7,与8互质。特殊的φ(1)=1.
2 欧拉函数值
(1)n为质数
此时只有n与n不互质,其余正整数均与n互质(注意gcd(1,n)=1也与n互质)
所以φ(n) =n-1(n为质数)
(2)n为合数
若n为质数p的K次幂,则有φ(n)=φ(p^k)=(p-1)*p^(k-1)
3 欧拉函数的常用性质
当m,n互质时,φ(m*n)=φ(n) *φ(m)
当n为奇数时,φ(2*n)=φ(n)
φ(n) =φ(n/p1)*p1 (p能整除(n/p))
φ(n) =φ(n/p)*(p-1) (p与(n/p)互质且p是质数)
乘法逆元
定义
在模m有意义的条件下,若ax≡ 1(mod m),则称a关于1模m的乘法逆元为x.
注意:
当且仅当a与m互质时,a关于1模m的乘法逆元有解。特别的,当m为质数时,a的m-2次幂即为a的乘法逆元。
逆元的4大求解法
1费马小定理求逆元(必须满足m为质数)
2拓展欧几里得求逆元
欧几里得算法又称辗转相除法,用于计算两个非负整数a,b的最大公约数。
gcd(a,b)=gcd(b,a mod b)
A,B两数(A>B)有A=kB+r,存在gcd(A,B)=gcd(B,r)以此类推。
拓展欧几里得求逆元
3欧拉定理求逆元
欧拉定理:若a,m互质,则有
a^{φ( m)}≡ 1 ( mod m )。
4线性递推求逆元