描述
给定一个仅包含小写字母的字符串,求它的最长回文子串的长度。
所谓回文串,指左右对称的字符串。
所谓子串,指一个字符串删掉其部分前缀和后缀(也可以不删)的字符串
数据范围:字符串长度1\le s\le 350\1≤s≤350
进阶:时间复杂度:O(n)\O(n) ,空间复杂度:O(n)\O(n)
输入描述:
输入一个仅包含小写字母的字符串
输出描述:
返回最长回文子串的长度
示例1
输入:
cdabbacc复制
输出:
4复制
说明:
abba为最长的回文子串
while True: try: s1=input() length=0 for i in range(0,len(s1)-1): for j in range(i+1,len(s1)): if s1[i:j]+s1[i:j][::-1] in s1 and len(s1[i:j])*2>length: length=len(s1[i:j])*2 if s1[i:j]+s1[i:j-1][::-1] in s1 and ((len(s1[i:j])-1)*2+1)>length: length=(len(s1[i:j])-1)*2+1 print(length) except: break