A DNA序列---复制问题 Time Limit: 1000MS
核酸与蛋白质是生物体内两大重要的生物大分子,其中核酸是生物遗传信息从上一代传到下一代的的重要载体。核酸的基本组成单元是核苷酸,可将核苷酸分为脱氧核苷酸(DNA)和核糖核苷酸(RNA)。
我们以DNA为例,所有的DNA核苷酸的磷酸基团和糖基团都是一样的,但其化学组成的碱基基团有四种类型,腺嘌呤(A)、鸟嘌呤(G)、胞嘧啶(C)、胸腺嘧啶(T)。因此,对DNA序列的单链研究可以转化为研究由A、G、C、T四个字母组成的字符串。
DNA复制是指以原始的DNA分子为模板合成出相同分子的过程。在一些酶的作用下,DNA复制过程的有四种可能:完全复制、半保留复制、逆复制、逆半保留复制。
给定一个带有遗传信息的模板mode,你能在DNA序列s中找到这样的复制过程最多有多少次?
【标准输入】
第一行: T 表示以下有T组测试数据 ( 1 ≤ T ≤ 8)
每组数据, 占一行:
mode s (|mode |≤ 20, |s| ≤ 300 , mode与s之间至少一个空格)
【标准输出】
对每组测试数据,输出占一行,
【 样 例 】
标准输入 |
标准输出 |
2 ACGA AGACGACGAGCAGCAACGA AAA ACGATTAAAAAGTCTAAAA |
5 5 |
说明:
1 半保留复制是指本次复制可以与前次复制部分重叠。例如:ACGACGA,算2次复制。类似逆半保留
复制,例如:AGCAGCA,算2次复制。
2 若模板是回文串,逆复制过程不再统计。
B DNA序列---同源问题 Time Limit: 1000MS
从本质上看,DNA序列不是一条条孤立的序列。每条序列都是通过进化遗传规律从远古的祖先序列演化而来的。在生物学上,如果两条DNA序列是从一个公共祖先序列进化而来的,则称二者具有同源性。
判断两条DNA序列是否同源的一个主要依据是探寻它们之间的相似性。序列重排和对齐是比较两条DNA序列相似程度的做法。为此,需要对它们各个位点的残基进行对齐,然后考虑从其中一条序列出发经过“变异操作“能否将其演变为另一条序列。其中“变异操作”包括:
- 替换:在某个点位从一种残基替换为另一种残基;
- 增加:在一条序列中新增加了残基;
- 丢失:原始序列中的残基在另一条中消失。
例如:假定两条均包含7个核苷酸的DNA序列分别为s=CTGAAGC, t=GGCTAAA。
比对方式1:
s: C T G A A G C
t: G G C T A A A
比对方式2:
s: C T G A A G C
t: G G C T A A A
哪种比对更好?还有哪些比对方式?为此,我们需要建立一个比对优劣的量化准则,基于该准则为每种方式赋予一个分值,具有最高分的比对方式作为判断同源问题的依据。
为研究方便,对给定的两个DNA序列s,t,假设对应位“匹配”得分为a,</