#include<iostream> #include<cstdio> #include<string> using namespace std; const int MAXN =101; int dp[MAXN][MAXN]; char ans1[MAXN]; char ans2[MAXN]; int main(){ string str1,str2; getline(cin,str1); getline(cin,str2); int n=str1.size(); int m=str2.size(); for(int i=0;i<n;i++){ ans1[i+1]=str1[i]; } for(int i =0;i<m;i++){ ans2[i+1]=str2[i]; } for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ if(i==0||j==0){ dp[i][j]=0; continue; } if(ans1[i] ==ans2[j]){ dp[i][j]=dp[i-1][j-1]+1; }else{ dp[i][j] = max(dp[i-1][j],dp[i][j-1]); } } } cout<<dp[n][m]<<endl; return 0; }