洛谷P3435 [POI2006]OKR-Periods of Words题解(KMP)
题目链接:https://www.luogu.com.cn/problem/P3435洛谷P3435 [POI2006]OKR-Periods of WordsKMP题意为求给定字符串所有前缀的最长真循环节长度之和。fail函数的应用,给定字符串的最长真循环节长度即为字符串长度减去最短非空公共前后缀长度,先求出原字符串的fail函数值。再从1开始遍历,若fail[i]能够继续减小(即它不是最短的公共前后缀),就令当前位置j=fail[j],直到fail[j]==-1时j所在位置即为原字符串的最短公共
原创
2021-06-11 10:20:57 ·
228 阅读 ·
1 评论