#include<iostream> #include<cstring> using namespace std; const int maxn=100; char str1[maxn]; char str2[maxn]; int dp[maxn][maxn]; int main(){ while(cin>>str1+1>>str2+1){ int m=strlen(str1+1); int n=strlen(str2+1); for(int i=0;i<=m;i++){ for(int j=0;j<=n;j++){ if(i==0||j==0){ dp[i][j]=0; continue; } if(str1[i]==str2[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[m][n]<<endl; } }