Problem C: 算法实验 6-3 最长公共子序列

Problem C: 算法实验 6-3 最长公共子序列

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 817  Solved: 414
[Submit] [Status] [Web Board] [Creator:]

Description

一个给定序列的子序列是在指在该序列中删去若干元素后得到的序列, 当序列Z既是X的子序列又是Y的子序列时,则Z是X和Y的公共子序列。

给定两个序列X和Y,求它们的最长公共子序列,请参照如下算法描述设计程序。



Input

输入两行,分别输入两个字符串,代表序列X和序列Y

Output

第1行输出最长公共子序列的长度;
第2行,参照上面的算法描述,输出构建的最长公共子序列。

Sample Input Copy

BDCABA
ABCBDA

Sample Output Copy

4
BCBA