下面是一道很典型的涉及到数论的编程问题(原题链接:https://icpcarchive.ecs.baylor.edu/external/43/4382.html)。

而要解这个问题,使用穷举或暴搜的方法显然不可取。若要优雅而巧妙地解决这个问题,就需要用到一个关于素数的著名结论——威尔逊定理(Wilson’s theorem)。
十八世纪中叶,一位英国法官约翰·威尔逊爵士,发现了数论中一种极为罕见的关系:取从1到某个质数所有连续正整数的乘积,例如从1乘到11,即11的阶乘11!,显然,11!能被从1到11的所有整数整除。略去11,得10!。无疑10!不能被11整除。然而,如果给10!加上1的话,1×2×3×4×5×6×7×8×9×10+1=,怎么也不会想到,却能被11整除(÷11=)。类似地,从1到质数7的阶乘7!中略去7,再加上1,得1×2×
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/200346.html原文链接:https://javaforall.net
