乘法逆元
定义
若ax≡1modp,则称x是a在modp意义下的逆元,记为x≡a−1modp
当然,a也是x在modp意义下的逆元
ab=a⋅b−1
几乎所有模意义下的除法都需要逆元
有逆元的充要条件
a在modp意义下有逆元的充要条件:(a,p)=1
逆元的求法
EXGCD
若求a在modp意义下的逆元,则可以转化为求解如下方程
ax+py=1
有EXGCD的相关知识可以得到,当且仅当
(a,p)=1时有解(有逆元的充要条件的证明)
费马小定理
如果p为质数,则ap−1≡1modp
∴a⋅ap−2≡1
∴ap−2≡a−1
欧拉定理
将费马小定理中的p−2换为φ(p)−1即可
p可以不是质数
递推
用于O(n)预处理[1⋯n]的逆元
构造p=ki+r
∴ki+r≡0modp
∴ki=−r
∴i−1=−k⋅r−1
其中k=⌊pi⌋,r=p%i
∴i−1=−⌊pi⌋⋅inv[p%i]
为了防止出现负数,通常的写法是这样的
inv[i]=(mod-mod/i)*inv[mod%i]%mod;