你需要找到由两个 n 位数的乘积组成的最大回文数。
由于结果会很大,你只需返回最大回文数 mod 1337得到的结果。
示例:
输入: 2
输出: 987
解释: 99 x 91 = 9009, 9009 % 1337 = 987
说明:
class Solution {
public int largestPalindrome(int n) {
int upper=(int)Math.pow(10,n)-1;
int lower=upper/10;
for(int i=upper;i>lower;i--)
{
StringBuffer p=new StringBuffer(i+"");
StringBuffer p1=new StringBuffer(i+"");
long number=Long.parseLong(p.append(p1.reverse())+"");
for(long j=upper;j*j>number;j--)
{
if(number%j==0)
return (int)(number%1337);
}
}
return 9;
}
}