最長共通部分列 (Longest Common Subsequence)
2つの数列 a
と b
が与えられ、それぞれの長さは n
と m
です。この2つの数列における最長共通部分列の長さを求めてください。
Input
最初の行には、空白で区切られた2つの整数 n
と m
(1 ≤ n, m ≤ 1000) が与えられます。
2行目には、数列 a
を構成する要素 が空白区切りで与えられます (1 ≤ ≤ )。
3行目には、数列
b
を構成する要素 が空白区切りで与えられます (1 ≤ ≤ )。
Output
a
と b
の最長共通部分列の長さを表す整数を1つ出力してください。
Examples
入力 | 出力 |
---|---|
5 4 2 1 5 3 4 2 5 1 4 | 3 |
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB