回文即对称只有两种形式: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