#P2127. Greatest Common Increasing Subsequence
Greatest Common Increasing Subsequence
题目描述
给定两个整数序列。编写一个程序,找出它们的最长公共递增子序列。
长度为 N 的序列 S₁, S₂, ..., Sₙ 被称为长度为 M 的序列 A₁, A₂, ..., Aₘ 的递增子序列,如果存在 1 ≤ i₁ < i₂ < ... < iₙ ≤ M,使得对于所有 1 ≤ j ≤ N,有 Sⱼ = Aᵢⱼ,并且对于所有 1 ≤ j < N,有 Sⱼ < Sⱼ₊₁。
输入格式
每个序列的描述包括:
- M —— 序列的长度(1 ≤ M ≤ 500)。
- M 个整数 Aᵢ(-2³¹ ≤ Aᵢ < 2³¹)—— 序列本身。
输出格式
输出的第一行是 L —— 两个序列的最长公共递增子序列的长度。第二行输出该子序列。如果有多个可能的答案,输出其中任意一个。
示例输入 1
5
1 4 2 5 -12
4
-12 1 2 4
示例输出 1
2
1 4
来源
Northeastern Europe 2003, Northern Subregion