#include<iostream>
#include<string>
using namespace std;
int dp[1005][1005];
int main(){
int T;
cin>>T;
string str1,str2;
while(T--){
cin>>str1;
cin>>str2;
for(int i=1;i<=str1.size();i++) {
for(int j=1;j<=str2.size();j++){
if(str1[i-1]==str2[j-1])
dp[i][j]=dp[i-1][j-1]+1;
else
dp[i][j]=max(dp[i-1][j],dp[i][j-1]);
}
}
cout<<dp[str1.size()][str2.size()]<<endl;
}
return 0;
}
最长公共子序列(nyoj36)
最新推荐文章于 2019-09-15 17:31:09 发布