线性求逆元
我们知道 \(1^{-1}\equiv 1\pmod p\) ,然后我们设 \(p=k\cdot i+r,~r<i,~1<i<p\) ,再将这个式子放到 \(\mathrm{mod}\,\,p\) 意义下,就会得到:
\[k\cdot i+r\equiv 0\pmod p
\]
两边同时乘上 \(i^{-1}\cdot r^{-1}\) 就会得到:
\[\begin{eqnarray*} k\cdot r^{-1} + i^{-1} &\equiv& 0 &\pmod p\\ i^{-1} &\equiv& -k\cdot r^{-1} &\pmod p\\ i^{-1} &\equiv& -\left\lfloor\frac{p}{i}\right\rfloor\cdot (p\bmod i)^{-1}&\pmod p\end{eqnarray*}
\]
代码
inv[i]=((mod-mod/i)*inv[mod%i])%mod;