一個迴文數指的是從左向右和從右向左讀都一樣的數字。最大的由兩個兩位數乘積構成的迴文數是9009 = 91 * 99.
找出最大的有由個三位數乘積構成的迴文數。
public class Test {
public static boolean isPlalindrome(int number){
//此方法實現判斷數字是不是迴文數
String num = String.valueOf(number);
return new StringBuffer(num).reverse().toString().equalsIgnoreCase(num);
}
public static boolean isThree(int number){
//此方法判斷是不是三位數乘積
int i = (int)Math.sqrt(number);
for(; i > 100; i--)
if(number%i == 0 && number/i <= 1000 && number/i >= 100){
return true;
}
return false;
}
public static void main(String[] args) {
for(int i = 999 * 999; i >= 1000; i--){
if(isPlalindrome(i)){
if(isThree(i)){
System.out.println(i);
break;
}
}
}
}
}