312005 - 最长公共上升子序列

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

Input

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

Output

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

Examples

Input

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

Output

2
1 4(注:结果非唯一)
Time Limit 5 seconds
Memory Limit 128 MB
Discuss Stats
上一题 下一题