早教吧 育儿知识 作业答案 考试题库 百科 知识分享

ACM题目里...为什么大整数经常是对10007取模而不是10006或者10008什么的?难道是因为这是个接近且大于10000的素数?这有什么必要?取模嘛...没必要非得是素数啊

题目详情
ACM题目里...为什么大整数经常是对10007取模而不是10006或者10008什么的?难道是因为这是个接近且大于10000的素数?这有什么必要?取模嘛...没必要非得是素数啊
▼优质解答
答案和解析
对素数取模一般能得到较好的离散效果,如果你对10006或10008取模,那所有2的倍数仍然都是2的倍数,对于某些数据(全奇全偶神马的)离散效果不好,取其他数的倍数也会遇到类似的问题,所以习惯上对素数取模,至于离10000最近只是根据数据规模的大小取数的时候,大家都喜欢离整数近长得好看的……