我必须编写一个代码来找到输入数字 10 ^ num 的两个最高互质因子。
现在,我已经写了:
def coprimes(num):
for x in range (2, num):
for y in range (2, num):
while (gcd(x,y) == 1) & (x != y):
if (x*y==num):
return (x,y)
由于forloops,这显然是一个非常慢的程序。每当我将它输入终端时,产生答案的速度太慢了。我也不确定这是否正确。你对我如何改进这种方法有什么建议吗?
此方法的示例答案应该是:
>>> coprimes(10)
(9765625, 1024)