Solution to Problem 30. Written in Python.
Problem: Surprisingly there are only three numbers that can be written as the sum of fourth powers of their digits:
1634 = 14 + 64 + 34 + 44
8208 = 84 + 24 + 04 + 84
9474 = 94 + 44 + 74 + 44
As 1 = 14 is not a sum it is not included.
The sum of these numbers is 1634 + 8208 + 9474 = 19316.
Find the sum of all the numbers that can be written as the sum of fifth powers of their digits.
from problems.euler_lib import euler_lib as lib
fifth_power = lambda x: x ** 5
answer = []
for i in range(2, (9 ** 5) * 6 + 1):
sum_of_digits = sum(map(fifth_power, lib.get_digits(i)))
if(i == sum_of_digits):
answer.append(i)
print str(sum(answer))