我正在做Euler项目,我刚刚完成问题#3。
这是我制作的代码:
num = 600851475143
values = []
i = 1
for n in range(1, num):
if num % (i+0) == 0:
values.append(n)
if len(values) == 10:
break
i += 1
prod = 1
for v in values:
prod *= v
if prod == num:
print('Largest prime factor of 600851475143 is', v)
break
如何打印已经乘以的素数,直到素因子数出现(包括最后一个)?
那么,只有print(values)
的前5个数字?
答案 0 :(得分:0)
要打印休息前使用的所有for point B => B* => 5x - 3: [No points right of B] ++ [(C*) 4x - 6, (A*) x - 1]
for point C => C* => 4x - 6: [(B*) 5x - 3] ++ [(A*) x - 1]
(note that we start at -90 deg up to -270 deg)
,您可以执行以下操作:
values