难度:简单
给定一个整数 n ,返回 可表示为两个
n位整数乘积的 最大回文整数 。因为答案可能非常大,所以返回它对1337取余 。示例 1:
输入:n = 2 输出:987 解释:99 x 91 = 9009, 9009 % 1337 = 987示例 2:
输入:n = 1 输出:9提示:
1 <= n <= 8
题解:
pythonclass Solution: def largestPalindrome(self, n: int) -> int: if n == 1: return 9 # 1位数的最大回文数是9 # 生成 n 位数的最大值 max_num = int("9" *n) # 例如,n=3时,max_num = 999 min_num = 10 ** (n - 1) # n位数的最小值,即100 max_palindrome = 0 # 储存找到的最大回文数 # 从最大 n 位数开始逆序遍历 for i in range(max_num, min_num-1, -1): for j in range(i, min_num-1, -1): # j 从 i 开始,以减少重复计算 product = i * j # 检查乘积是否为回文 if str(product) == str(product)[::-1]: max_palindrome = max(max_palindrome, product) # 更新最大回文数 break # 找到的最大回文数可立即使用 return max_palindrome % 1337 # 返回结果对1337取余
leetcode:479. 最大回文数乘积(python3解法,数学相关算法题)
心软且酷丶2025-05-31 12:10
相关推荐
B站_计算机毕业设计之家6 分钟前
猫眼电影数据可视化与智能分析平台 | Python Flask框架 Echarts 推荐算法 爬虫 大数据 毕业设计源码PPPPPaPeR.11 分钟前
光学算法实战:深度解析镜片厚度对前后表面折射/反射的影响(纯Python实现)JaydenAI14 分钟前
[拆解LangChain执行引擎] ManagedValue——一种特殊的只读虚拟通道看我干嘛!15 分钟前
python第五次作业骇城迷影19 分钟前
Makemore 核心面试题大汇总历程里程碑20 分钟前
Linux 库长安牧笛22 分钟前
反传统学习APP,摒弃固定课程顺序,根据用户做题正确性,学习速度,动态调整课程难度,比如某知识点学不会,自动推荐基础讲解和练习题,学习后再进阶,不搞一刀切。Sheep Shaun22 分钟前
如何让一个进程诞生、工作、终止并等待回收?——探索Linux进程控制与Shell的诞生Pluchon23 分钟前
硅基计划4.0 简单模拟实现AVL树&红黑树