私は何度もこの問題に遭遇しましたが、それを解決することはできません。答えが間違っている場合や、私が書いたプログラムが遅すぎる場合があります。正式に私は計算について話している
nCk mod p
ここで、pは素数であり、nは大きな数であり、1 <= k<=nです。
私は何を試しましたか:
階乗の再帰的定式化とそれを動的計画問題としてモデル化することは知っていますが、それは遅いと感じています。再帰的な定式化は(nCk) + (nCk-1) = (n+1Ck)
です。オーバーフローを回避するために配列に値を格納するときにモジュラスを処理しmod p
ましたが、結果に対してを実行するだけで、削除する必要がある可能性があるため、すべてのオーバーフローを回避できるかどうかはわかりません。