25 lines
499 B
Python
25 lines
499 B
Python
from lib_misc import is_palindrome
|
|
|
|
|
|
def get_digit_inverse(n):
|
|
return int(str(n)[::-1])
|
|
|
|
|
|
def is_not_lychrel(n, iterations=50):
|
|
for i in range(0, iterations):
|
|
n = n + get_digit_inverse(n)
|
|
if is_palindrome(n):
|
|
return (i + 1)
|
|
return 0
|
|
|
|
|
|
def euler_055():
|
|
lychrels = [n for n in range(1, 10000) if is_not_lychrel(n) == 0]
|
|
s = len(lychrels)
|
|
return s
|
|
|
|
|
|
if __name__ == "__main__":
|
|
print("e055.py: " + str(euler_055()))
|
|
assert(euler_055() == 249)
|