// 2016复旦上机第一题.cpp : 定义控制台应用程序的入口点。
//求解两个字符串的最大公共长度
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string>
#include <iostream>
using namespace std;
char a[256];
char b[256];
int dp[256][256];
int _tmain(int argc, _TCHAR* argv[])
{
scanf("%s",a); int len1 = strlen(a);//列
scanf("%s",b); int len2 = strlen(b);//行
fill(dp[0],dp[0]+len1*len2,0);
for(int i = 1;i<=len2;i++)//行
for(int j =1;j<=len1;j++){//列
if(a[j-1] == b[i-1]){
dp[i][j] = dp[i-1][j-1] + 1;
}else{
dp[i][j] = max(dp[i-1][j],dp[i][j-1]);
}
}
for(int i = 0;i<=len2;i++){//行
for(int j =0;j<=len1;j++){
printf("%d ",dp[i][j]);
}
printf("\n");
}
//printf("%d\n",dp[len2][len1]);
system("pause");
return 0;
}