如何计算形式的模数(a * b)%c?
我想计算两个int数的乘法模数,它们几乎处于溢出阶段......
这里c也是int
答案 0 :(得分:15)
(a * b) % c == ((a % c) * (b % c)) % c
答案 1 :(得分:7)
((a % c) * (b % c)) % c
怎么样?根据您的架构,这可能比投射到更大的类型更快或更慢。
答案 2 :(得分:5)
您可以将a
和c
投射到long long
,这样乘法就不会溢出。
((long long)a * (long long)b) % c