CSES 3404 - Permutation Subsequence
1.0s 512M給你兩個陣列,它們都是排列,請找出它們的最長共同子序列。
子序列是從陣列中由左到右取出的一串元素,中間可以有空隙。共同子序列則是同時為兩個陣列之子序列的序列。
輸入格式
第一行有兩個整數 \(n\) 和 \(m\):兩個陣列的長度。
第二行有 \(n\) 個整數 \(a_1, a_2, \ldots, a_n\):第一個陣列的內容。
第三行有 \(m\) 個整數 \(b_1, b_2, \ldots, b_m\):第二個陣列的內容。
輸出格式
先輸出最長共同子序列的長度。
接著輸出一組這樣的子序列。如果有多組解,輸出任意一組即可。
範例輸入 1
8 6
3 1 2 8 5 7 6 4
6 5 1 2 3 4
範例輸出 1
3
1 2 4
限制
- \(1 \le n, m \le 2 \times 10^5\)
- \(1 \le a_i \le n\)
- \(1 \le b_i \le m\)
題目來源
CSES - Permutation Subsequence
題目來自 CSES Problem Set(Antti Laaksonen),授權 CC BY-NC-SA 4.0;本頁為翻譯,以相同授權分享。
登入後即可撰寫程式並提交評測。
登入