312005 - 最长公共上升子序列

科学家将两种不同生物的基因序列转换成两个整数序列,并试图确定他们的最大公共上升子序列的长度,例如有A序列为4 3 2 1 7 8 9,B序列为7 8 9 4 3 2 1,其最长公共子序列是4 3 2 1,而最长公共递增子序列应该是7 8 9

输入

输入每个序列由M(1\le M\le500)个整数组成,M个整数范围在(-2^{31},2^{31})之间。

输出

第一行输出最长公共上升子序列长度L,第二行输出该子序列,如果该序列有多个答案,输出任意一个即可。

样例

输入

5
1 4 2 5 -12
4
-12 1 2 4

输出

2
1 4(注:结果非唯一)
时间限制 5 秒
内存限制 128 MB
讨论 统计
上一题 下一题