上传者: 43869224
|
上传时间: 2021-05-01 21:06:14
|
文件大小: 818B
|
文件类型: PY
【问题描述】使用动态规划算法解最长公共子序列问题,具体来说就是,依据其递归式自底向上的方式依次计算得到每个子问题的最优值。
【输入形式】在屏幕上输入两个序列X和Y,序列各元素数间都以一个空格分隔。
【输出形式】矩阵c,其中c[i,j]中存放的是:序列Xi = {x1, ..., xi}和序列Yj = {y1, ..., yj}的最长公共子序列的长度。序列X和Y的最长公共子序列。
【样例1输入】
A B C B D A B
B D C A B A
【样例1输出】
[[0 0 0 0 0 0 0]
[0 0 0 0 1 1 1]
[0 1 1 1 1 2 2]
[0 1 1 2 2 2 2]
[0 1 1 2 2 3 3]
[0 1 2 2 2 3 3]
[0 1 2 2 3 3 4]
[0 1 2 2 3 4 4]]
BCBA
【样例1说明】
输入:第一行输入序列X的各元素,第二行输入序列Y的各元素,元素间以空格分隔。
输出:矩阵c,和序列X和Y的最长公共子序列。