我们有三个数字a、b和p。 p 是一个大素数,但 a 和 b 比 p 小得多。
如何使用快速算法确定 ap + b 是否为素数?
我们不想使用 BigInteger 类和类似的东西。
请注意,我们还可以了解有关p的一些其他信息。例如,如果m很小,则可以轻松计算p % m。
最佳答案
这个问题更适合数学合作伙伴论坛。
如果gcd(a, b) != 1
那么它就不是素数。
如果(a + b) % 2 != 1
那么它就不是质数。
考虑 3.7 + 4
不是质数会导致另一条规则。
所以做一些数学计算,即
(a % b) * (p % b)
必须是素数,尽管p % b
是不可能的。
关于algorithm - 如果 p 是素数,如何使用快速算法检查 ap + b 是否是素数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45324488/