数学笔记:逆元

数学笔记:逆元

逆元

一整数a对同余n之模逆元是满足以下公式的整数b
a^{-1} \equiv b \pmod{n}
也可以写成
ab \equiv 1 \pmod{n}

求逆元的方法

扩展欧几里得算法

费马小定理

费马小定理可以转换成如下形式
若a是一个整数,p是一个质数,则
a^{p-2} \equiv a^{-1} \pmod{p}

线性递推

我们设p=ki+r, r < i, 1 < i < p,然后把左边的式子展开
ki + r \equiv 0 \pmod{p}
两边同乘 (ir)^{-1}
\begin{aligned} kr^{-1} + i^{-1} &\equiv 0 &\pmod{p} \\ i^{-1} &\equiv -kr^{-1} &\pmod{p} \\ i^{-1} &\equiv -\lfloor \frac{p}{i} \rfloor \cdot (p \bmod i)^{-1} &\pmod{p} \end{aligned}
于是我们就得到了逆元的线性递推式:

inv[i] = -(MO / i) * inv[MO % i];

阶乘的逆元

先处理 (n!)^{-1} ,然后 [(n-1)!]^{-1} \equiv n(n!)^{-1} \pmod{p}

参考资料



发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据