#两层循环,暴力破解 while True: try: s = input() res = [] for i in range(len(s)): for j in range(i+1, len(s)+1): if s[i:j] == s[i:j][::-1]: res.append(j-i) if res != '': print(max(res)) except: break #另一种方法: while True: try: s = input() #输入 len_s = len(s) result=0 #初始化最后的结果 for n in range(len_s): #从第一个字符开始搜索最长的字符串 max_length = result+1 #max_length代表搜索字符串的长度,所以只搜索大于result的字符串 while n+max_length<=len_s: #代表搜索完以第n+1个字符串开头的所有字符串 if s[n:n+max_length] == s[n:n+max_length][::-1]: #如果满足是回文字符串 result = max_length #则此时最大的字符串长度变为max_length max_length +=1 #每次增加字符串的长度1 if result !=0: #防止空字符串 print(result) except: break