字符串 KMP HDU 2594

#include 
#include 

#define min(a,b) ((a)<(b)?(a):(b)) 
/*
clinton
homer
riemann
marjorie
题意: 前缀和后缀 的最长匹配 
思路:KMP ,将前一个串和后一个串链接起来,求next[n]就是答案 
*/
const int N = 50005;
char a[N],b[N],c[2*N];
int next[2*N];//注意  
int lena,lenb,lenc;
void getNext()
{
	int j=-1;next[0]=-1;
	for(int i=1;i=0 && c[i]!=c[j+1])
			j=next[j];
		if(c[i]==c[j+1])
			j++;
		next[i]=j;
	}/*
	for(int i=0;i

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