线性求逆元的算法

本文介绍\(O(n)\)处理\([1, n]\)在模\(P\)意义下的逆元的方法。

结论

\[inv_i \equiv -\lfloor \frac{P}{i} \rfloor * inv_{(P \bmod i)} \pmod P\]


证明

现在要求\(i\)的逆元:

\(a = \lfloor \frac{P}{i} \rfloor, b = P \bmod i\),则

\[a * i + b \equiv 0 \pmod P\]
\[-a * i \equiv b \pmod P\]

等式两边同除\(i * b\)

\[-a * inv[b] = inv[i]\]

\(a = \lfloor \frac{P}{i} \rfloor, b = P \bmod i\)代入上式得

\[inv_i \equiv -\lfloor \frac{P}{i} \rfloor * inv_{(P \bmod i)} \pmod P\]

你可能感兴趣的:(线性求逆元的算法)