22

在许多编程问题(例如一些 Project Euler 问题)中,我们被要求将答案报告为答案除以 1,000,000,007 后的余数。

为什么没有其他号码?

编辑:2 年后,这就是我所知道的:这个数字是一个大素数,并且对这样一个问题的任何答案都非常大,以至于报告一个余数是有意义的(因为这个数字对于本机数据类型来说可能太大了处理)。

4

1 回答 1

23

让我扮演一个心灵感应者。1000...7 是质数,1000000007 是适合 32 位整数的最大数。由于素数用于计算哈希(通过找到除以素数的余数),因此 1000000007 适合计算 32 位哈希。

于 2012-09-25T08:00:55.533 回答