Easy bruteforce solution
This commit is contained in:
26
30/main.py
Normal file
26
30/main.py
Normal file
@@ -0,0 +1,26 @@
|
||||
# Digit fifth powers
|
||||
|
||||
# 1634, 8208 and 9474 are the only number that can be written as the sum of the fourth powers of their digits
|
||||
# Find the sum of all the numbers that can be written as the sum of the fifth powers of their digits
|
||||
|
||||
# Through some googling, we found an upper bound of the result at 6*9^5 = 354294
|
||||
# So, we can just bruteforce it, not that big of a search space
|
||||
|
||||
def intToList(n):
|
||||
return [int(d) for d in str(n)]
|
||||
|
||||
def sumIntPowers(n, p=5):
|
||||
return sum([d**p for d in intToList(n)])
|
||||
|
||||
def main():
|
||||
print("Hello, this is Patrick")
|
||||
|
||||
result = 0
|
||||
for n in range(10, 999999):
|
||||
if n == sumIntPowers(n):
|
||||
result += n
|
||||
|
||||
print(result)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user