D. Om Nom and Necklace(border树)
D. Om Nom and Necklace
题意:给定一个n长的字符串和一个k。询问每个前缀是不是ABABABA这样的形式,其中B有k个,A有k+1个,AB都可以为空。
思路:先说结论吧,既然AB都可以为空,那把AB看成一个串C那就是CCCC…A,A又是C的前缀,这显然是循环节,所以对于一个前缀,如果它存在这么一个循环节,其周期刚好是k,就是合法的。另外还有一种特殊情况,就是B为空,也就是A=C,那么就是刚好由K+1个一样的字符串组成也合法。那么怎么实现呢,我们知道循环节是根据kmp的border函数得来
原创
2021-10-28 15:42:53 ·
264 阅读 ·
0 评论