【发布时间】:2011-02-08 11:15:25
【问题描述】:
在课堂上我们发现了这个编程问题,目前我们不知道如何解决。
给出正整数
n。已知n = p * q,其中p和q是素数,p<=q和|q-k*p|<10^5对于某些给定的正整数k。你必须找到p和q。
输入:
35 1
121 1
1000730021 9
输出:
5 * 7
11 * 11
10007 * 100003
这不是家庭作业,我们只是想解决一些有趣的问题。如果您有任何想法,请在此处发布,以便我们尝试一下,谢谢。
【问题讨论】:
-
嗯....也许可以将其移至 www.solvemyproblemoverflow.com
-
提示:q≈kp,所以 n=pq≈kp²。换言之,p≈√(n/k)。把“≈”变成精确的界限,你就有了你的算法。
-
输入格式是什么:n k?
-
这听起来有点像 projecteuler.net 的问题。
标签: algorithm rsa factorization