#P238. 公共子序列

公共子序列

题目描述

给定两个整数序列,写一个程序求它们的最长公共子序列的长度。

当以下条件满足的时候,我们将长度 NN 的序列 S1,S2,,SNS_1, S_2, \ldots, S_N 称为长度为 MM 的序列 A1,A2,,AMA_1, A_2, \ldots, A_M 的子序列:

存在 1i1<i2<<iNM1 \le i_1 < i_2 < \ldots < i_N \le M,使得对所有 1jN1 \le j \le N,均有 Sj=AijS_j = A_{i_j}

输入格式

输入包括多组测试数据。每组数据包括一行,给出两个长度不超过 200200 的字符串,表示两个序列。两个字符串之间由若干个空格隔开。

输出格式

对每组输入数据,输出一行,给出两个序列的最长公共子序列的长度。

样例

abcfbc abfcab
programming contest
abcd mnp
4
2
0

数据范围

每组数据的两个字符串长度均不超过 200200