51nod1277 字符串中的最大值
传送门: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1277
Solution
KMP中next数组可以求出每个前缀最长(小于本身)的border,显然一个前缀A出现的次数就是以A为最大(小于本身)border的前缀个数+1,记cnt[i]为长度为i的前缀出现次数-1,cnt可以逆推求出,所以一遍KMP之后,逆推求cnt,顺便求最大值就好了.
Code
|
|
传送门: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1277
KMP中next数组可以求出每个前缀最长(小于本身)的border,显然一个前缀A出现的次数就是以A为最大(小于本身)border的前缀个数+1,记cnt[i]为长度为i的前缀出现次数-1,cnt可以逆推求出,所以一遍KMP之后,逆推求cnt,顺便求最大值就好了.
|
|