题解 | 密码截取
密码截取
https://www.nowcoder.com/practice/3cd4621963e8454594f00199f4536bb1
import sys
s = input().strip()
n = len(s)
if n == 1:
print(1)
else:
dp = [[False] * n for _ in range(n)]
max_length = 0
start = 0
for i in range(n-1, -1, -1):
for j in range(i, n):
if s[i] == s[j]:
if j-i < 2:
dp[i][j] = True
else:
dp[i][j] = dp[i+1][j-1]
if dp[i][j]:
current_leng = j - i + 1
if current_leng > max_length:
max_length = current_leng
start = i
longest = s[start:start + max_length]
print(max_length)

