#genocon2021b. [genocon2021_b]Practice 2
[genocon2021_b]Practice 2
题目描述
和 是由 A、C、G、T 组成的字符串。我们用 s\[i\] 和 t\[i\] 来分别表示 和 的第 个字符。我们定义以下得分 ,并通过在适当位置添加空白符号到 和 中来使其最大化。注意,添加空白符号后的 和 的长度应相同, 表示长度。空白符号用 - 来表示。
= sim(s\[i\], t\[i\])
是一个用于计算 和 相似性的函数,下表定义了它的输出。
\
A
C
G
T
-
A
1
-3
-3
-3
-5
C
-3
1
-3
-3
-5
G
-3
-3
1
-3
-5
T
-3
-3
-3
1
-5
-
-5
-5
-5
-5
-5
例如,当 =CTCGGT 和 =CATCC 时,如果在 的第一个字符后面添加 -,并在 的最后一个字符后面连续添加两个 -, 最大化。
= C, C-,AT,TC,CG,CG,-T,-
注意:添加空白符号的 和 是对齐的,使得许多位置上相同的字符出现在每个字符串的相同位置。
C-TCGGT
CATCC--
我们称此任务为两两对齐,并将其描述为两行字符串。
给定两个字符串,输出它们的两两对齐,并使 最大化。
约束条件
- 和 是由 A、C、G、T 组成的字符串。
- (字符串 的长度用 表示)。
输入
输入以以下格式从标准输入给出:
输出
打印输入字符串的两两对齐,使 最大化。在 和 中插入 - 之后,
应该打印在第一行, 应该打印在第二行。如果有多个使 最大化的对齐方式,则可以打印任意一种。
只有当满足以下条件时,判题系统才能接受用户的输出: - 如果删除 - ,第一行/第二行与输入的第一行/第二行相等。 - 第一行的长度与第二行的长度相等。
示例输入 1
AGTTGAATTT
GTCGGACTTT
示例输出 1
AGT-TGAATTT
-GTCGGACTTT