#Z5070. 最长公共子序列

最长公共子序列

给定两个长度分别为 n,m 的整数序列,计算这两个序列的最长公共子序列长度。

程序的框架已经写好,需要你填入关键代码,使得这个程序可以正确通过。

输入格式

第一行输入两个整数 n,m(1n,m500)n,m(1 \le n,m \le 500),表示两个序列的长度。

接下来一行 n 个整数,表示读入的第一个序列的元素。

接下来一行 m 个整数,表示读入的第二个序列的元素。

以上 n+m 个整数都在 1 到 1000 之间。

输出格式

输出一个整数,表示两个序列的最长公共子序列的长度。

输出时每行末尾的多余空格,不影响答案正确性

样例输入

5 4
3 6 1 4 7
3 1 4 2

样例输出

3