为什么要模1000000007

为什么要模1000000007

刷OJ时,经常会遇到要模1000000007。

先看一下常用数据类型的数值范围(32位系统)

字节 类型 范围 长度
一字节(2^8) char -128 ~ 127 3
一字节(2^8) unsigned char 0 ~ 255 3
二字节(2^16) short -32768 ~ 32767 5
二字节(2^16) unsigned short 0 ~ 65535 5
四字节(2^32) unsigned int 0~4294967295 10
四字节(2^32) int -2147483648~2147483647 10
四字节(2^32) unsigned long 0~4294967295 10
四字节(2^32) long -2147483648~2147483647 10
八字节(2^64) long long (g++) -9223372036854775808~9223372036854775807 19
八字节(2^64) unsigned long long (g++) 0~18446744073709551615 20
八字节(2^64) __int64 (msvc) -9223372036854775808~9223372036854775807 19
八字节(2^64) unsigned __int64 (msvc) 0~18446744073709551615 20

最小的十位质数1000000007

1000000007 是最小的十位质数。模1000000007,可以保证值永远在int的范围内。

猜你喜欢

转载自blog.csdn.net/mandagod/article/details/79767954