河南省第十二届ACM大学生程序设计竞赛试题

本文介绍了ACM大学生程序设计竞赛中的四道题目,涉及DNA序列的复制、同源、变异问题以及地铁车票收入计算。解题者需要解决DNA序列的复制次数、序列比对、变异密码子数量以及地铁运营总收入等问题,考察算法和数据结构的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

A  DNA序列---复制问题                   Time Limit: 1000MS

核酸与蛋白质是生物体内两大重要的生物大分子,其中核酸是生物遗传信息从上一代传到下一代的的重要载体。核酸的基本组成单元是核苷酸,可将核苷酸分为脱氧核苷酸(DNA)和核糖核苷酸(RNA)。

我们以DNA为例,所有的DNA核苷酸的磷酸基团和糖基团都是一样的,但其化学组成的碱基基团有四种类型,腺嘌呤(A)、鸟嘌呤(G)、胞嘧啶(C)、胸腺嘧啶(T)。因此,对DNA序列的单链研究可以转化为研究由AGCT四个字母组成的字符串。

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序列相似程度的做法。为此,需要对它们各个位点的残基进行对齐,然后考虑从其中一条序列出发经过“变异操作“能否将其演变为另一条序列。其中“变异操作”包括:

  1. 替换:在某个点位从一种残基替换为另一种残基;
  2. 增加:在一条序列中新增加了残基;
  3. 丢失:原始序列中的残基在另一条中消失。

例如:假定两条均包含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序列st,假设对应位“匹配”得分为a,</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值