#L6564. 最长公共子序列

最长公共子序列

题目描述
对于两个给定的序列,请求出它们的最长公共子序列长度。

一个序列的子序列定义为能通过删除一部分元素,保留剩下的元素相对顺序不变而得到的序列。

输入格式
第一行两个整数 nn,mm,表示两个序列的长度。

第二行 nn 个整数 a1a_1,a2a_2,\ldots,ana_n,表示第一个序列。

第三行 mm 个整数 b1b_1,b2b_2,\ldots,bmb_m,表示第二个序列。

输出格式
输出两个序列的最长公共子序列长度。

样例
输入
44 55
11 22 44 55
44 11 33 33 22
输出
22

数据范围与提示
本题共有两个子任务。

对于所有数据,11 \leq nn,mm,aia_i,bib_i \leq 7000070000

Subtask 1(5050分):nn,mm \leq 50005000

Subtask 2(5050分):无特殊限制。