#include<cstdio>
#include<iostream>
#include<string>
using namespace std;
const int maxn=1001;
int arr[maxn][maxn];
string s1,s2;
int main()
{
while(cin>>s1>>s2)
{
int x=s1.size();
int y=s2.size();
for(int i=0;i<x;i++)
{
for(int j=0;j<y;j++)
{
if(i==0||j==0)
arr[i][j]=0;
else
{
if(s1[i]==s2[j])
arr[i][j]=arr[i-1][j-1]+1;
else
arr[i][j]=max(arr[i][j-1],arr[i-1][j]);
}
}
}
cout<<arr[x-1][y-1];
}
system("pause");
return 0;
}
最长公共子序列c++
最新推荐文章于 2020-03-26 20:13:51 发布