题目概述
一个字符串的子序列是指由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后形成的新字符串。两个字符串的公共子序列是这两个字符串所共同拥有的子序列。给定字符串text1
和text2
,输出它们的最大公共子序列。
输入格式
在两行分别输入一个字符串。
输出格式
在第一行输出它们的最大公共子序列;
在第二行输出其长度。
输入样例
a b c d e abcde abcde
a c e ace ace
输出样例
a c e ace ace
3 3 3
解决方法
- 动态规划
建立二维数组dp[m+1][n+1]
,其中dp[i][j]
代表text1
的从第 1 1