Solve easy problem 808 to be back in the game
parent
729bfc7eb2
commit
880385a451
|
@ -0,0 +1,25 @@
|
||||||
|
from lib_prime import primes
|
||||||
|
from lib_misc import is_palindrome_string
|
||||||
|
|
||||||
|
|
||||||
|
def euler_808():
|
||||||
|
r = []
|
||||||
|
squared_primes = set()
|
||||||
|
ps = primes(100000000)
|
||||||
|
for p in ps:
|
||||||
|
p_squared = p * p
|
||||||
|
p_squared_str = str(p_squared)
|
||||||
|
if not is_palindrome_string(p_squared_str):
|
||||||
|
squared_primes.add(p_squared)
|
||||||
|
p_squared_reverse = int(p_squared_str[::-1])
|
||||||
|
if p_squared_reverse in squared_primes:
|
||||||
|
r += [p_squared, p_squared_reverse]
|
||||||
|
if len(r) == 50:
|
||||||
|
break
|
||||||
|
return sum(r)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
solution = euler_808()
|
||||||
|
print("e808.py: " + str(solution))
|
||||||
|
assert(solution == 3807504276997394)
|
Loading…
Reference in New Issue