LeetCode 479. Largest Palindrome Product

Find the largest palindrome made from the product of two n-digit numbers.
Since the result could be very large, you should return the largest palindrome mod 1337.
Example:
Input: 2
Output: 987
Explanation: 99 x 91 = 9009, 9009 % 1337 = 987
Note:
The range of n is [1,8].

题目大意:找到由两个n位数字乘积得到的最大回文。由于结果可能非常大,返回最大回文的%1337后的结果。

分析:l是两位数的最小值,r是两位数的最大值,从r到1能够组成的回文是r的字符串+r倒置后的字符串组成的字符串,将这个回文字串转为long型的ans,j从r到根号ans中,判断是否有j可以满足能被ans整除的j,并且这个除以的结果是小于r的,如果找到了返回ans%1337的结果,因为如果n == 1的时候比较特殊,组成的回文串是9,所以如果for循环后依然没有返回,说明遇到了n=1,那么最后就单独返回9~

 

❤ 点击这里 -> 订阅《PAT | 蓝桥 | LeetCode学习路径 & 刷题经验》by 柳婼

❤ 点击这里 -> 订阅《从放弃C语言到使用C++刷算法的简明教程》by 柳婼

❤ 点击这里 -> 订阅PAT甲级乙级、蓝桥杯、GPLT天梯赛、LeetCode题解离线版