[HNOI2002] DNA分子的最佳比对

题目描述

$\operatorname{DNA}$ 分子是人类遗传信息的载体,它间接地指导蛋白质的合成。$\operatorname{DNA}$ 分子是由四种核苷酸组成的长链,这四种核苷酸分别是腺嘌呤核苷酸(用 $\operatorname{A}$ 代表)、鸟嘌呤核苷酸(用 $\operatorname{G}$ 代表)、胞嘧啶核苷酸(用 $\operatorname{C}$ 代表)和胸腺嘧啶核苷酸(用 $\operatorname{T}$ 代表)。习惯上用一个字符集为 $\{\operatorname{A,T,C,G}\}$ 的字符串来表示一个 $\operatorname{DNA}$ 分子序列,如 $\operatorname{CGTTAGA}$ 。 在生物进化过程中, $\operatorname{DNA}$ 分子可能发生各种各样的突变。这种突变形成了生物遗传信息的改变,从而使生物得以分化,构成了生物的多样性。 主要的突变有三种: 1. 在一个 $\operatorname{DNA}$ 序列中插入一个新的核苷酸, 2. $\operatorname{DNA}$ 序列中丢失了一个核苷酸, 3. $\operatorname{DNA}$ 序列中的某个核苷酸被另一个核苷酸所取代。 所谓两个 $\operatorname{DNA}$ 序列的一个比对是寻找一种排列方式,使得两个 $\operatorname{DNA}$ 序列在同样的位置上有相同的核苷酸,而若在同样的位置上两个DNA序列的核苷酸不同,则是由三种突变之一得到。例如,对两个 $\operatorname{DNA}$ 序列 $T_1 =\operatorname{ATCAG}$ , $T_2 =\operatorname{ACTAG}$ ,可以按如下方式比对,( $-$ 表示空白) 比对一: | $T_1$ | $T_2$ | | :----------- | :----------- | | $A$ | $A$ | | $T$ | $-$ | | $C$ | $C$ | | $-$ | $T$ | | $A$ | $A$ | | $G$ | $G$ | 也可以按如下方式比对 比对二: | $T_1$ | $T_2$ | | :----------- | :----------- | | $A$ | $A$ | | $T$ | $C$ | | $C$ | $T$ | | $A$ | $A$ | | $G$ | $G$ | 如果两个 $\operatorname{DNA}$ 序列在相同的位置上有越多相同的核苷酸对,则表明它们之间越相似,即它们存在功能上的相似性和进化史上的亲缘关系。 对于两个 $\operatorname{DNA}$ 序列的一个比对,规定如下得分方式: 1. 一个同样的位置上有相同的核苷酸对,则可得 $1$ 分; 2. 一个同样的位置上有不同的核苷酸对,则得 $0$ 分; 3. 如果在某个位置上一个序列有核苷酸,而另一个序列在该位置上为 $-$,则得 $-2$ 分。例如,比对一的得分是 $0$ 分,比对二的得分是 $3$ 分。 问题是:对于两个 $\operatorname{DNA}$ 序列,寻找一种比对方式,使得它们的得分最高。

输入输出格式

输入格式


输入数据共有两行。 第一行为 $\text{DNA}$ 序列 $T _ 1$,第二行为 $\text{DNA}$ 序列 $T _ 2$。序列的长度不大于 $1000$。序列中的字母是英文小写或者大写字母。

输出格式


程序运行结束时,在屏幕上输出所找出的最大的得分。

输入输出样例

输入样例 #1

Atcag
Actag

输出样例 #1

3