一个字符串的前缀指的是它的所有包含首字符的子串,后缀指的是它的所有包含尾字符的字符串。特别地,空串可以看做所有字符串的前缀或后缀。
比如,字符串 "abcde" 的前缀有 ""(空串)、"a"、"ab"、"abc"、"abcd"、"abcde"(字符串本身也是自己的一个前缀),后缀有 ""(空串)、"e"、"de"、"cde"、"bcde"、"abcde"(字符串本身也是自己的一个后缀)。
很明显,字符串本身既是自己的一个前缀,也是自己的一个后缀。
所以,本题你需要找的是字符串除了本身以外最长的一个前缀,同时这个前缀也是该字符串的后缀,并输出这个前缀的最大长度。
换句话说,你需要找一个最大的 k,K 小于字符串长度,其该字符串的长度为 k 的前缀与长度为 k 的后缀相等,并输出这个 k。