【问题标题】:How to calculate the result of the multiplication of two int64 numbers modulus another int64 number?如何计算两个 int64 数乘以另一个 int64 数的结果?
【发布时间】:2013-05-08 03:08:38
【问题描述】:

设a,b,c为long long (int64)数,如何计算(a*b)%c?这里的问题是你不能乘以 (a%c)*(b%c) 因为它不适合 int64 变量。那么,有什么办法呢?

以防万一它有帮助,我正在使用 C++。

【问题讨论】:

标签: math modulus int64


【解决方案1】:

您可以使用任意精度库,例如 gmp,以确保您永远不会溢出您的数字类型。

你确保你的乘法不会溢出你的类型。在不了解您的意见的情况下,我无法真正推测出这样做的好方法。

或者this question非常适合你的任务。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-30
    • 1970-01-01
    • 2020-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多