题解 | 最长回文子串

#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param A string字符串
# @return int整型
#
class Solution:
    def getLongestPalindrome(self, A: str) -> int:
        # write code here
        max_value1 = 1

        for i in range(len(A)):
            temp = 1
            for j in range(min(i, len(A) - i - 1)):
                if A[i - j - 1] == A[i + j + 1]:
                    temp += 2
                else:
                    break
            max_value1 = max(temp, max_value1)

        max_value2 = 1
        for i in range(1, len(A)):
            if A[i - 1] == A[i]:
                temp = 2
                for j in range(min(i - 1, len(A) - i - 1)):
                    if A[i - j - 1 - 1] == A[i + j + 1]:
                        temp += 2
                    else:
                        break
                max_value2 = max(temp, max_value2)
        return max(max_value1, max_value2)

全部评论

相关推荐

09-18 20:41
门头沟学院 Java
要个offer怎么这...:哈哈哈哈哈哈,我也拿了0x10000000个offer,秋招温啦啦啦,好开心
我的秋招日记
点赞 评论 收藏
分享
ResourceUt...:楼主有自己的垃圾箱,公司也有自己的人才库
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务