#include <iostream>
#include <algorithm>
#include <queue>
#include <vector>
#include <cstring>
#include <string>
#include <string.h>
#include <stdio.h>
#include <cmath>
#include <map>
#include <functional>
#include <set>
using namespace std;
//1042
string s,t;
int dp[101][101];
int main(){
//freopen("input.txt","r",stdin);
memset(dp,0,sizeof(dp));
while(cin>>s>>t){
int l1=s.size(),l2=t.size();
for(int i=1;i<=l1;i++){
for(int j=1;j<=l2;j++){
if(s[i-1]==t[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[l1][l2]<<endl;
}
return 0;
}
/**************************************************************
Problem: 1042
User: cust123
Language: C++
Result: Accepted
Time:10 ms
Memory:1560 kb
****************************************************************/
题目1042:Coincidence
最新推荐文章于 2019-07-20 03:58:44 发布