#D0363. 最长公共子序列长度

最长公共子序列长度

题目描述

给定一个长度为 nn 的序列 AA,以及一个长度为 mm 的序列 BB,求 A,BA,B 的最长公共子序列。即求一个最长的序列,保证既是 AA 的子序列又是 BB 的子序列。

  • 子序列:序列 AA子序列是从 AA 中将若干元素提取出来并不改变相对位置形成的序列。空序列及原序列本身也是原序列的一个子序列。
  • 非空子序列:除了空序列之外的子序列。
  • 真子序列:除了原序列本身之外的子序列。
  • 非空真子序列:除了空序列及原序列本身之外的子序列。

输入格式

第一行两个数 n,mn,m

第二行 nn 个数 a1ana_1\sim a_n

第三行 mm 个数 b1bmb_1\sim b_m

输出格式

一个整数,即最长公共子序列的长度。

6 6
3 1 4 2 5 8
3 5 1 4 8 2
4

(3,1,4,8),(3,1,4,2)(3,1,4,8),(3,1,4,2)

数据规模与约定

对于 100%100\% 的数据,1n,m10001 \le n,m \le 10001ai1091\le a_i\le 10^9