Problem 56 Powerful digit sum

2016-11-25 13:59:00   技术   python projecteulor

A googol (10100) is a massive number: one followed by one-hundred zeros; 100100 is almost unimaginably large: one followed by two-hundred zeros. Despite their size, the sum of the digits in each number is only 1.

Considering natural numbers of the form, ab, where a, b < 100, what is the maximum digital sum?

result = 0
for a in range(1, 101):
    for b in range(1, 101):
        result = max(result, sum([eval(i)for i in list(str(a**b))]))
print result

有空一定要去研究一下python的**用的什么算法,真快

result = 0
for a in range(1, 101):
    for b in range(1, 101):
        result = max(result, sum([int(i)for i in list(str(a**b))]))
print result

修改版 发现eval处理速度太慢了

print max([sum([int(i) for i in list(str(a**b))]) for a in range(1, 101) for b in range(1, 101)])

装X版

评论已关闭。
评论共