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(后缀数组的高度数组运用)

Leetcode 14 Longest Common Prefix

leetcode-14 longest-common-prefix(最长公共前缀)