A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 × 99. Find the largest palindrome made from the product of two 3-digit numbers.
To check if a number in Javascript is palindrome, we can convert it to String, then split into char array, reverse the array, and join as a string, then a palindrome is a string that its reverse is the same.
let ans = 0;
for (let i = 999; i >= 100; i --) {
for (let j = 999; j >= 100; j --) {
let num = i * j;
let s = String(num);
let rs = s.split('').reverse().join('');
if (s === rs) {
ans = Math.max(ans, num);
}
}
}
console.log(ans);
Two loops each range from 100 to 999 for 3-digit number. Then we check the product and record the maximum palindrome.
The answer is: 906609.
–EOF (The Ultimate Computing & Technology Blog) —
191 wordsLast Post: What is the largest prime factor of the number 600851475143 ?
Next Post: Recursive Depth First Search Algorithm to Compute the Diameter of Binary Tree
Is there a better algorithm?
Another idea is to go through all 6 digit product numbers which are also palindrome. And check if it could be expressed as two 3-digit product.