回文即对称只有两种形式:aa类和aca类,其他的都是以上两类为拓展,所以从所给的字符串里面选择长度为2和长度为3的字符,再向两边延申,再比较是否回文
while True:
try:
s = input()
res = 1#初始为1,即使单个字符,对称字符的长度就是一
for lenth in range(2,4):#窗口为2或者窗口为3
for i in range(len(s)-lenth+1): #从0到lenS-lenth取长度为lenth的字符串片段
if s[i:i+lenth] == s[i:i+lenth][::-1]: #判断是否回文
for x in range(min(i,len(s)-i-lenth)+1): #向两边拓展,要注意两边是否还有拓展的余地,即两边还能各加多少(取最小值)
if s[i-x:i+lenth+x] == s[i-x:i+lenth+x][::-1]: #若是相同
res = max(res,lenth+2*x) #取现有的res和新得到的回文大小的最大值
else:
break
print(res)
except:
break