我们知道 (1^{-1}equiv 1pmod p) ,然后我们设 (p=kcdot i+r,~r<i,~1<i<p) ,再将这个式子放到 (mathrm{mod}\,\,p) 意义下,就会得到:
[kcdot i+requiv 0pmod p
]
两边同时乘上 (i^{-1}cdot r^{-1}) 就会得到:
[egin{eqnarray*} kcdot r^{-1} + i^{-1} &equiv& 0 &pmod p\ i^{-1} &equiv& -kcdot r^{-1} &pmod p\ i^{-1} &equiv& -leftlfloorfrac{p}{i}
ight
floorcdot (pmod i)^{-1}&pmod pend{eqnarray*}
]
代码
inv[i]=((mod-mod/i)*inv[mod%i])%mod;