【BZOJ2803】[Poi2012]Prefixuffix Description 对于两个串S1、S2,如果能够将S1的一个后缀移动到开头后变成S2,就称S1和S2循环相同。例如串ababba和串abbaab是循环相同的。给出一个长度为n的串S,求满足下面条件的最大的L:1. L<=n/22. ...
分类:
其他好文 时间:
2017-06-18 15:12:12
阅读次数:
134
题解:
首先我们如果设原串为串[ 1,n1,n ]
然后 fif_i 表示串[ i+1,n?ii+1,n-i ]中最长的串长使得串[ i+1,i+fii+1,i+f_i ]==串[n?i?fi+1,n?in-i-f_i+1,n-i]
这时存在一个性质 fi?1=fi+2f_{i-1}
然后就可以线性递推啦!
证明:
现在让我们来反证一下这个性质:
下图有四种情况,f[i]为红色...
分类:
其他好文 时间:
2015-05-16 16:35:15
阅读次数:
120
题目大意:给定一个字符串S,求一个最长的L(L*2
一开始我的想法是枚举L,判断长度为L的前缀和长度为L的后缀的所有循环同构的哈希值之和是否相等
但是很快我发现这做法是扯淡- - 因为一个字符串所有循环同构的哈希值之和等于这个字符串所有字符ASCII码之和乘上(BASE^len+BASE^(len-1)+...+BASE^2+BASE+1)
然后我在想能不能考虑修改一下哈希函数呢?
比如给...
分类:
其他好文 时间:
2015-03-04 14:45:29
阅读次数:
141