这是问题:
有多少个整数 0 ≤ n < 10^18 满足n的每一位数字之和等于137n的每一位数字之和?
这个解决方案非常低效。我错过了什么吗?
有多少个整数 0 ≤ n < 10^18 满足n的每一位数字之和等于137n的每一位数字之和?
这个解决方案非常低效。我错过了什么吗?
#!/usr/bin/env python
#coding: utf-8
import time
from timestrings import *
start = time.clock()
maxpower = 18
count = 0
for i in range(0, 10 ** maxpower - 1):
if i % 9 == 0:
result1 = list(str(i))
result2 = list(str(137 * i))
sum1 = 0
for j in result1:
sum1 += int(j)
sum2 = 0
for j in result2:
sum2 += int(j)
if sum1 == sum2:
print (i, sum1)
count += 1
finish = time.clock()
print ("Project Euler, Project 290")
print ()
print ("Answer:", count)
print ("Time:", stringifytime(finish - start))