欧拉计划 34

来源:互联网 发布:pytorch 知乎 编辑:程序博客网 时间:2024/06/04 18:13

145 是一个奇怪的数字, 因为 1! + 4! + 5! = 1 + 24 + 120 = 145.

找出所有等于各位数字阶乘之和的数字之和。

注意: 因为 1! = 1 和 2! = 2 不是和的形式,所以它们不算在内。

import mathfactorial_dict = {}for i in range(10):    factorial_dict[i] = math.factorial(i)curious_sum = 0# 10 ** 8 > factorial_dict[9] * 8for i in range(3, 7 * factorial_dict[9] + 1):    i_sum = 0    j = i    while j:        i_sum += factorial_dict[j % 10]        j //= 10    if i_sum == i:        curious_sum += iprint(curious_sum)
0 0
原创粉丝点击