リニア事前Mod_Inv

\ [\ \]
\ [\ \]
------------


ll Inv[N]={1,1};
for(int i=2;i<N;i++) Inv[i]=(MOD-MOD/i) * Inv[MOD%i] %MOD

\ [\ \]
\ [\ \]

それは素晴らしいああではありません

私は証明できません

(しかし、私は、コードqwqをバックアップします)

私たちは、一目\(モッズ\ Invの\)の定義

\ [A \ CDOT P \ \当量\ 1 \ \ \(MOD \ M)\]

この式のために

\ [T \ CDOT I + k個の\当量0 \(MODの\ M)\]

可変ビット - >>

\ [\ FRAC {1} {I} \当 - \ FRAC {T} {K} \(MODの\ M)\]

Invの[K] *トンの$ - これは$ Invの[i]は=です

私たちのコードを一瞥してみましょう

(好きではないです!)

このため\(MOD / Iが\)切り捨てられ、実際にはに等しくなければなりません

\ [\ Fracの{(V-Vの\のVの\ I)} {I} \]

$ T \ CDOT I + K \当量0(モッズメートル)$にそれを持参

驚くべき

\ [T = \ FRAC {(V-Vの\ Vの\ I)} iは\ {I}、K = Vの\のVの\]

ただ、セットアップ(一部はアウト当接して)

ハッピーは、声を出して笑いました

おすすめ

転載: www.cnblogs.com/chasedeath/p/11259378.html