2024-02-01から1ヶ月間の記事一覧

JavaのModIntを考える

序論 プログラミングコンテストでは「答えの数を1000000007で割った余りを求めよ」という問題が大変よく出題される。1000000007は素数で、ほかにも 998244353 が代わりに出題されることもよくある。これらは真の解は大きくなりすぎて計算できない場合でも、…

プリミティブタイプはJavaのジェネリクスに入らない

int, long, doubleなどのプリミティブな型を使うことは当然だ。これらに対して同じデータ構造やアルゴリズムを適用したいことがあるのも当然だ。 ジェネリクスがあるのだからint, long, doubleで共通な計算は実装できそうなものだが、できない。例えば配列の…