牛客 悠悠碧波/CF126B(kmp)
牛客 悠悠碧波/CF126B(kmp)题目描述题解代码
题目描述
链接: 牛客链接.
链接: 洛谷题解.
题意:给一个字符串,求出其中最长的一个子串,满足既是前缀也是后缀,且在中间也至少出现过一次
题解
首先前缀和后缀相等,联想到kmp(kan mao pian)算法:
该子串既是以len-1结尾的后缀,也是串中以某一第i位置结尾的后缀,也是整个串的前缀。
(1)首先kmp算法处理出[0,len]位置的next值。
对于[0,len-1]的next存储的是失配的下一匹配位置;[1,len]可看作[0,len
原创
2020-07-09 17:59:26 ·
242 阅读 ·
0 评论