题解 | #最长回文子串#
最长回文子串
https://www.nowcoder.com/practice/12e081cd10ee4794a2bd70c7d68f5507
# !/usr/bin/env python3 # -*- coding: utf-8 -*- __author__ = 'tianyi' __date__ = '2024/3/23 20:24 ' __file__ = 'HW_HJ85.py' import sys for i in sys.stdin: a = i.rstrip() list1 = [] for j in range(0, len(a)-1): if a[j] == a[j+1]: string1 = a[j]+a[j+1] n=0 for k in range(j+2, len(a)): n-=1 try: if a[k] == a[j+n]: string1 = a[k]+string1+a[j+n] else: break except: pass list1.append(string1) else: try: if a[j-1] == a[j+1]: string1 = a[j-1]+a[j]+a[j+1] n=-1 for k in range(j+2, len(a)): n-=1 try: if a[k] == a[j+n]: if j+n < 0: break string1 = a[k]+string1+a[j+n] else: break except: pass list1.append(string1) except: pass list1.sort(key=len,reverse = True) print(len(list1[0]))
sort函数是在原列表进行排序更改, 不存在返回值