字符串 KMP HDU 3746

#include 
#include 
/*
3
aaa
abca
abcde
KEY:next数组的运用。
题意:求需要添加几个字母构成一个循环字符串
思路:KMP,求next数组后 ,n-next[n] 为最优循环节 
*/
const int N = 100005;
char b[N];
int next[N];
int len;
void getNext()
{
	int j=-1;next[0]=-1;
	for(int i=1;i=0 && b[i]!=b[j+1])
			j=next[j];
		if(b[i]==b[j+1])
			j++;
		next[i]=j;
	}/*
	for(int i=0;i


你可能感兴趣的:(字符串)