news 2026/7/9 6:26:48

解决leetcode第3985题回文数组求和

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
解决leetcode第3985题回文数组求和

3985.回文子数组求和

难度:困难

问题描述:

给你一个整数数组nums。

你的任务是找出nums中一个回文子数组的最大元素和。返回这样的子数组的最大元素和。

子数组是数组中一个连续的非空元素序列。

如果一个子数组正着读和反着读都相同,则称其为回文。

示例1:

输入:nums=[10,10]

输出:20

解释:

整个数组[10,10]是回文子数组。因此,最大元素和为10+10=20。

示例2:

输入:nums=[1,2,3,2,1,5,6]

输出:9

解释:

连续子数组[1,2,3,2,1]是回文子数组。它的元素和为1+2+3+2+1=9,并且这是最大元素和。

示例3:

输入:nums=[7,1,2,1,7,3,4,3,4]

输出:18

解释:

连续子数组[7,1,2,1,7]是回文子数组。它的元素和为7+1+2+1+7=18,并且这是最大元素和。

示例4:

输入:nums=[1,2,3,4,5]

输出:5

解释:

不存在长度大于1的回文子数组。数组中的最大元素是5,因此答案为5。

示例5:

输入:nums=[1000]

输出:1000

解释:

只包含一个元素的子数组也是回文子数组。因此,答案为1000。

提示:

1<=nums.length<=10**5

1<=nums[i]<=10**9

问题分析:

本题思路简单,首先是如何判断回文子数组,这通过函数check_if_it_is_a_palindrome_array(nums)实现,基功能是对于给定的数组nums,判断其是否为回文数组,如果是,返回True,否则返回False,其次通过一个二重循环列举出所有可能的子数组,判断其回文性,把所有的回文子数组及其和以列表的形式找出,最后输出最大和以及对应的子数组即可。

程序如下:

#检查一个数组nums是否为一个回文数组,是返回True,否返回False def check_if_it_is_a_palindrome_array(nums): return nums==nums[::-1] #主程序 nums=eval(input("enter the array nums=")) t=[] n=len(nums) for i in range(n): for j in range(i+1,n+1): s=nums[i:j] if check_if_it_is_a_palindrome_array(s): t.append([s,sum(s)]) t.sort(key=lambda x: x[1]) print(f'连续子数组{t[-1][0]}是回文子数组,它的元素和为{t[-1][1]}')

运行实例一

enter the array nums=[1,3,2,4,2,3,5]

连续子数组[3, 2, 4, 2, 3]是回文子数组,它的元素和为14

运行实例二

enter the array nums=[22,33,44,55]

连续子数组[55]是回文子数组,它的元素和为55

运行实例三

enter the array nums=[33,33]

连续子数组[33, 33]是回文子数组,它的元素和为66

运行实例四

enter the array nums=[55]

连续子数组[55]是回文子数组,它的元素和为55

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/9 6:24:51

泰涨知识 | 华为生成树协议配置

以下我们通过命令及实例来展示不同生成树协议STP、RSTP及MSTP的配置过程。 STP基础配置 启用STP/RSTP/MSTP system-view&#xff0c;进入系统视图 stp enable&#xff0c;使能交换设备的STP/RSTP功能 缺省情况下&#xff0c;设备的STP/RSTP功能处于启用状态。 配置STP/RSTP工作…

作者头像 李华
网站建设 2026/7/9 6:23:56

秋招简历自我评价怎么写才加分?资深HR教你3招脱颖而出

引言&#xff1a;秋招简历自我评价的重要性秋招季&#xff0c;每一份简历都承载着求职者的期望。在众多简历中&#xff0c;自我评价往往是HR快速筛选的关键区域——它不仅是简历的“点睛之笔”&#xff0c;更是展示你与岗位匹配度的最佳窗口。一份优秀的自我评价&#xff0c;能…

作者头像 李华
网站建设 2026/7/9 6:23:31

粉笔AI面试点评深度测评:20个维度到底评了什么?

核心结论&#xff1a;粉笔AI面试点评上线40天即突破100万次使用&#xff0c;是目前公考领域使用量最大的AI面试练习工具。其核心优势在于"20维度量化评估即时反馈低成本高频练习"&#xff0c;适合作为面试备考的日常训练辅助。但AI在"情感表达""临场应…

作者头像 李华