#294. 最长公共子序列

最长公共子序列

题目描述

<p> <span style="font-size:14px;">  最长公共子序列,英文缩写为LCS(Longest Common Subsequence)。其定义是,一个序列 S ,如果分别是两个或多个已知序列的子序列,且是所有符合此条件序列中最长的,则 S 称为已知序列的最长公共子序列。</span> </p> <p> <span style="font-size:14px;">  最长公共子序列是一个十分实用的问题,它可以描述两段文字之间的“相似度”,即它们的雷同程度,从而能够用来辨别抄袭。对一段文字进行修改之后,计算改动前后文字的最长公共子序列,将除此子序列外的部分提取出来,这种方法判断修改的部分,往往十分准确。</span> </p> <p> <span style="font-size:14px;">     给出两段文字,求最长公共子序列长度。<br /> </span> </p> <p> <span style="font-size:14px;">  <br /> </span> </p>

输入格式

<blockquote> <p> <span style="font-size:14px;">两行:</span> </p> <p> <span style="font-size:14px;">第1行:一行字符串</span> </p> <p> <span style="font-size:14px;">第2行:一行字符串</span> </p> <p> <span style="font-size:14px;">字符串长度均不超过1000。</span> </p> </blockquote>

输出格式

<blockquote> <span style="font-size:14px;">一行:一个整数,表示LCS长度。</span> </blockquote>

样例

样例 1

输入 # 1

ABCDEFG
CABXCEDGEF

输出 # 1

6