HDU1403Longest Common Substring
Posted ---学习ing---
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU1403Longest Common Substring相关的知识,希望对你有一定的参考价值。
明天写
超时代码:
#include<cstdio>
#include<cstdlib>
#include<iostream>
#include<cstring>
#include<string>
#include<algorithm>
#include<map>
using namespace std;
char a[100010],b[100010];
int Max,L1,L2;
int dp[3][100010];
int main()
{
int i,j;
while(~scanf("%s",a+1)){
scanf("%s",b+1);
L1=strlen(a+1);
L2=strlen(b+1);
for(i=1;i<=L1;i++)
for(j=1;j<=L2;j++){
if(a[i]==b[j]){
dp[i%3][j]=dp[(i+2)%3][j-1]+1;
if(dp[i%3][j]>Max) Max=dp[i%3][j];
}
else dp[i%3][j]=0;
}
printf("%d\n",Max);
}
return 0;
}
以上是关于HDU1403Longest Common Substring的主要内容,如果未能解决你的问题,请参考以下文章
HDU1403Longest Common Substring
HDU 1403 Longest Common Substring(最长公共前缀)
[HDU1403]Longest Common Substring(后缀数组)
HDU-1403-Longest Common Substring(后缀数组的高度数组运用)