poj1458

时间:2023-03-08 23:45:03
poj1458
 //Accepted    4112 KB    16 ms
 //最长公共子串
 #include <cstdio>
 #include <cstring>
 #include <iostream>
 using namespace std;
 ;
 int dp[imax_n][imax_n];
 char s1[imax_n];
 char s2[imax_n];
 int len1,len2;
 int max(int a,int b)
 {
     return a>b?a:b;
 }
 void Dp()
 {
     memset(dp,,sizeof(dp));
     ;i<=len1;i++)
     {
         ;j<=len2;j++)
         {
             dp[i][j]=max(dp[i-][j],dp[i][j-]);
             ]==s2[j-])
             dp[i][j]=max(dp[i][j],dp[i-][j-]+);
         }
     }
     printf("%d\n",dp[len1][len2]);
 }
 int main()
 {
     while (scanf("%s%s",s1,s2)!=EOF)
     {
         len1=strlen(s1);
         len2=strlen(s2);
         Dp();
     }
     ;
 }