Euler 4
So the other night I was a bit bored and decided to do something to pass the time. I first came across Project Euler a while ago, but had never gone further than problem #1. Boredom is a great motivator and I went through problems #2 thru #9 last night and I decided to post my solutions in search of better ones. Feel free to comment with your suggestions.
Project Euler’s Problem #4 statement is —
A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is .
Find the largest palindrome made from the product of two 3-digit numbers.
Searching downward lets us stop as soon as the remaining products cannot beat
the best palindrome already found. Starting the inner loop at a also avoids
checking both a * b and b * a.
largest = 0
for a in range(999, 99, -1):
if a * a <= largest:
break
for b in range(a, 99, -1):
product = a * b
if product <= largest:
break
if str(product) == str(product)[::-1]:
largest = product
print(largest)
This prints 906609 ().