パッケージ library
クラス ModuloCalculation
- java.lang.Object
-
- library.ModuloCalculation
-
class ModuloCalculation extends java.lang.Objectモジュロ演算のライブラリ
-
-
ネストされたクラスの概要
ネストされたクラス 修飾子とタイプ クラス 説明 private static classModuloCalculation.CombinationCalculator高速にmod込みで組み合わせを計算できる.
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 ModuloCalculation()
-
メソッドの概要
すべてのメソッド staticメソッド concreteメソッド 修飾子とタイプ メソッド 説明 private static long[][]createCombinationTable(int size)組み合わせの計算をDPを用いて高速化する.private static longmodInv(long a, long mod)素数modを法としたaの逆元を計算する.
-
-
-
メソッドの詳細
-
createCombinationTable
private static long[][] createCombinationTable(int size)
組み合わせの計算をDPを用いて高速化する.ModuloCalculation.CombinationCalculatorの方が計算量,メモリ容量的に使いやすい.- パラメータ:
size- 二次元配列のサイズ 配列の大きさから size C x はできないことに注意- 戻り値:
- 二次元配列
-
modInv
private static long modInv(long a, long mod)素数modを法としたaの逆元を計算する.BigInteger.valueOf(a).modInverse(mod).longValue() でも同じことができそう
- パラメータ:
a- 逆元を計算したい値mod- 法となる素数- 戻り値:
- modを法としたaの逆元
-
-