逆元
逆元就是在mod意义下,不能直接除以一个数,而要乘以它的逆元。
(a imes x = 1 mod p),那么(x)就是(a)在(p)下的逆元,除以(a)就等于乘以(x)
扩展欧几里得
扩展欧几里得是求一组 (x,y) 使得 (a imes x + b imes y = gcd(x,y))
把 (b) 换成 (p) 求 (x) 就行了
费马小定理
费马小定理:(p)为素数,(a^{p-1} = 1 mod p)
所以说(a imes a^{p-2} = 1 mod p),(a^{p-2})就是(a)的逆元
递推求逆元
int inv[maxn];
void init()
{
inv[1] = 1;
for(int i = 2; i < maxn; i++)
{
inv[i] = (M-M/i)*inv[M%i]%M;
}
}