hdu 3722

2014-11-23 22:08:32 来源: 作者: 浏览: 2
#include
#include
#define N 210
#define inf 0x3fffffff
int map[N][N],match[N],lx[N],ly[N],sx[N],sy[N],d[N],n;
int find(int x)
{
	sx[x]=1;
	for(int i=0;itemp temp:d[i];
	}
	return 0;
}
int KM()
{
	int i,j,k,sum,min;
	memset(match,-1,sizeof(match));
	memset(ly,0,sizeof(ly));
	for(i=0;ilx[i])
				lx[i]=map[i][j];
	}
	for(i=0;id[k])
					min=d[k];
				for(j=0;j=0;p--,k++)
				{
					if(str[i][p]!=str[j][k])break;
				}
				map[i][j]=k;
				for(p=0,k=strlen(str[j])-1;str[i][p]&&k>=0;k--,p++)
				{
					if(str[i][p]!=str[j][k])break;
				}
				map[j][i]=p;
			}
			sum=KM();
			printf("%d\n",sum);
	}
	return 0;
}

-->

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: