CF981A Antipalindrome
题目描述
如果一个字符串从左到右和从右到左读都是一样的,那么它就是一个回文串。例如,字符串 "kek"、"abacaba"、"r" 和 "papicipap" 都是回文串,而 "abb" 和 "iq" 不是回文串。
字符串 $s$ 的子串 $s[l \ldots r]$($1 \leq l \leq r \leq |s|$)是指字符串 $s = s_1 s_2 \ldots s_{|s|}$ 的 $s_l s_{l+1} \ldots s_r$。
Anna 不喜欢回文串,所以她让朋友们叫她 Ann。她也会以类似的方式改变她读到的所有单词。具体来说,每个单词 $s$ 都会被她变成其最长的不是回文串的子串。如果 $s$ 的所有子串都是回文串,她就会直接跳过这个单词。
有一次 Ann 读到了单词 $s$。请问她会把它变成什么?
输入格式
第一行包含一个非空字符串 $s$,长度不超过 $50$,只包含小写英文字母。
输出格式
如果 $s$ 存在不是回文串的子串,输出这些子串的最大长度。否则输出 $0$。
注意,可能存在多个最长的不是回文串的子串,但它们的长度是唯一的。
说明/提示
"mew" 不是回文串,所以它最长的不是回文串的子串就是 "mew" 本身。因此,第一个样例的答案是 $3$。
"uffuw" 是字符串 "wuffuw" 的一个最长的不是回文串的子串(长度为 $5$),所以第二个样例的答案是 $5$。
字符串 "qqqqqqqq" 的所有子串都由相同的字符组成,因此都是回文串。这样就没有不是回文串的子串,所以第三个样例的答案是 $0$。
由 ChatGPT 4.1 翻译