5

(a*b)%c の形式のモジュラスを計算する方法は?

ほとんどオーバーフローの段階にある2つのint数値の乗算のモジュラスを計算したい...

ここで c も int です

4

3 に答える 3

15
(a * b) % c == ((a % c) * (b % c)) % c
于 2011-05-06T19:04:54.757 に答える
7

どう((a % c) * (b % c)) % cですか?アーキテクチャによっては、より大きな型にキャストするよりも速くなったり遅くなったりする可能性があります。

于 2011-05-06T19:04:56.787 に答える
5

aandcをにキャストできるlong longため、乗算がオーバーフローしません。

((long long)a * (long long)b) % c
于 2011-05-06T18:57:24.240 に答える