leetcode:479. 最大回文数乘积(python3解法,数学相关算法题)

难度:简单

给定一个整数 n ,返回 可表示为两个 n 位整数乘积的 最大回文整数 。因为答案可能非常大,所以返回它对 1337 取余

示例 1:

复制代码
输入:n = 2
输出:987
解释:99 x 91 = 9009, 9009 % 1337 = 987

示例 2:

复制代码
输入:n = 1
输出:9

提示:

  • 1 <= n <= 8

题解:

python 复制代码
class 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取余
相关推荐
毕设源码-赖学姐17 小时前
【开题答辩全过程】以 Python在浙江省人口流动数据分析与城市规划建议的应用为例,包含答辩的问题和答案
开发语言·python·数据分析
qq_73917536917 小时前
Android Studio 实现四则运算+开方+倒数简易计算器
android·python·android studio
万邦科技Lafite18 小时前
如何对接API接口?需要用到哪些软件工具?
java·前端·python·api·开放api·电商开放平台
小许学java18 小时前
七大排序算法的基本原理
数据结构·算法·排序算法
艾醒18 小时前
大模型面试题剖析:深入解析 Transformer 与 MoE 架构
人工智能·算法
艾醒19 小时前
探索大语言模型(LLM):一文读懂通用大模型的定义、特点与分类
算法
格林威19 小时前
短波红外相机在工业视觉检测中的应用
人工智能·深度学习·数码相机·算法·计算机视觉·视觉检测
EEG小佬19 小时前
KAN(Kolmogorov-Arnold Networks)通俗理解
人工智能·python·深度学习·神经网络
做运维的阿瑞20 小时前
告别性能焦虑:Python 性能革命实践指南
开发语言·后端·python
唐叔在学习20 小时前
文档转换神器pypandoc详解:解锁Python跨格式文档转换的终极姿势
后端·python