【POJ2406】Power Strings(KMP与最小循环节的故事)

题目:

我是超链接

题解:

最小循环节=长度-末位失配

条件:1、长度可以整除末位失配   2、末位失配的长度小于长度的二分之一

其实可以发现1包含2,因为如果循环节大于长度的一半,也不可能整除

代码:

#include 
#include 
using namespace std;
char s[1000005];int t[1000005],n;
void sp()
{
	t[0]=-1;
	for (int i=0;i

你可能感兴趣的:(KMP)