配对碱基链 (Coursera 程序设计与算法 专项课程2 C程序设计进阶 李戈;OpenJudge)_2395: 配对碱基链-程序员宅基地

技术标签: Coursera 程序设计与算法(专项课程)  c++  数组  函数  poj  

编程题#2: 配对碱基链

来源: POJ (http://pkuic.openjudge.cn/ziyoulianxi/09)

注意: 总时间限制: 1000ms 内存限制: 65536kB

描述

脱氧核糖核酸(DNA)由两条互补的碱基链以双螺旋的方式结合而成。而构成DNA的碱基共有4种,分别为腺瞟呤(A)、鸟嘌呤(G)、胸腺嘧啶(T)和胞嘧啶(C)。我们知道,在两条互补碱基链的对应位置上,腺瞟呤总是和胸腺嘧啶配对,鸟嘌呤总是和胞嘧啶配对。你的任务就是根据一条单链上的碱基序列,给出对应的互补链上的碱基序列。

输入

第一行是一个正整数n,表明共有n条要求解的碱基链。

以下共有n行,每行用一个字符串表示一条碱基链。这个字符串只含有大写字母A、T、G、C,分别表示腺瞟呤、胸腺嘧啶、鸟嘌呤和胞嘧啶。每条碱基链的长度都不超过255。

输出

共有n行,每行为一个只含有大写字母A、T、G、C的字符串。分别为与输入的各碱基链互补的碱基链。

样例输入
5
ATATGGATGGTGTTTGGCTCTG
TCTCCGGTTGATT
ATATCTTGCGCTCTTGATTCGCATATTCT
GCGTTTCGTTGCAA
TTAACGCACAACCTAGACTT

样例输出
TATACCTACCACAAACCGAGAC
AGAGGCCAACTAA
TATAGAACGCGAGAACTAAGCGTATAAGA
CGCAAAGCAACGTT
AATTGCGTGTTGGATCTGAA

#include<iostream>     
using namespace std;

int thePair(char a[][256], int n);

int main(){
    char a[1000][256];
    int n = 0;

    cin >> n;
    for (int i = 0; i < n; i++)
        cin >> a[i];

    thePair(a, n);

    return 0;
}

int thePair(char a[][256], int n){
    int j = 0;
    for (int i = 0; i < n; i++){
        j = 0;
        while (a[i][j] != '\0'){
            switch (a[i][j]){
            case 'A': cout << 'T'; break;
            case 'T': cout << 'A'; break;
            case 'G': cout << 'C'; break;
            default: cout << 'G';
            }
            j++;
        }
        cout << endl;
    }

    return 0;
}

其它解法参考:
http://blog.csdn.net/panda711/article/details/50778909
http://www.cnblogs.com/dagon/p/4731471.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/happyygdx/article/details/77620606

智能推荐

手游性能测试指南_手游性能指标-程序员宅基地

文章浏览阅读5k次。随着手游3D类型游戏增多,对机器资源占用越发高,但用户手中硬件的提升是一个不可控且缓慢的过程,为了保证在尽量广泛的机型上流畅运行,提高游戏本身的潜在用户群体,所以手游客户端性能审核工作就越发重要,如何做客户端性能审核,如何快速,专业,准确的做客户端性能审核是我们需要重点关注、且持续建设的内容。_手游性能指标

CCF试题(C++实现)——201809-1 卖菜_在一条街上有n个卖菜的商店,按1至n的顺序排成一排,这些商店都卖一种蔬菜。 第一天-程序员宅基地

文章浏览阅读367次。最近在看CCF试题,在此做下学习笔记,有问题随时联系,欢迎批评指正201809-1 卖菜【问题描述】在一条街上有n个卖菜的商店,按1至n的顺序排成一排,这些商店都卖一种蔬菜。  第一天,每个商店都自己定了一个价格。店主们希望自己的菜价和其他商店的一致,第二天,每一家商店都会根据他自己和相邻商店的价格调整自己的价格。具体的,每家商店都会将第二天的菜价设置为自己和相邻商店第一天菜价的平均值(用..._在一条街上有n个卖菜的商店,按1至n的顺序排成一排,这些商店都卖一种蔬菜。 第一天

带联网功能的RFID宿舍门禁(五)-项目总结_esp8266 读取id卡-程序员宅基地

文章浏览阅读776次,点赞2次,收藏7次。文章首发及后续更新:https://mwhls.top/1075.html新的更新内容请到mwhls.top查看。无图/格式错误请到上方的文章首发页面查看。带联网功能的RFID宿舍门禁项目目录Github项目地址效果展示视频http://pan-yz.chaoxing.com/preview/showpreview_536535694800277504.html?v=1605849878000完成效果舵机转动:收到转动信号后,舵机正转180°,后逆转180°复原。读卡转_esp8266 读取id卡

Java注解解析-运行时注解详解(RUNTIME)_注解在运行时能看到什么内容-程序员宅基地

文章浏览阅读568次。一 注解的定义注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明 。如果要对于元数据的作用进行分类,还没有明确的定义,不过我们可以根据它所起的作用,注解不会改变编译器的编译方式,也不会改变虚拟机指令执行的顺序,它更可以理解为是一..._注解在运行时能看到什么内容

预警雷达半实物仿真验证系统-程序员宅基地

文章浏览阅读592次。 概述  为了更真实地模拟预警雷达的工作过程,检测预警雷达的预警效能,恒润科技基于丰富的雷达射频经验,为用户提供了基于半实物的预警雷达半实物仿真验证系统。互联网是个神奇的大网,大数据开发和软件定制也是一种模式,这里提供最详细的报价,如果你真的想做,可以来这里,这个手机的开始数字是一伍扒中间的是壹壹三三最后的是泗柒泗泗,按照顺序组合起来就可以找到,我想说的是,除非你想做或者了解..._半实物模拟仿真系统 雷达预警 学术

hystrix dashbord 后台报错 Error proxying request的解决方案_ashboardconfiguration$proxystreamservlet : error p-程序员宅基地

文章浏览阅读2.6k次。hystrix dashbord 后台报错堆栈信息:2020-01-19 18:35:47.023 ERROR 18836 --- [nio-8093-exec-4] ashboardConfiguration$ProxyStreamServlet : Error proxying request: http://localhost:8023/actuator/hystrix.streamj..._ashboardconfiguration$proxystreamservlet : error proxying request

随便推点

Redis实现延迟队列_redisdelayqueue-程序员宅基地

文章浏览阅读6k次。Redis 是通过有序集合(ZSet)的方式来实现延迟消息队列的,ZSet 有一个 Score 属性可以用来存储延迟执行的时间。但需要无限循环检查任务,会消耗系统资源_redisdelayqueue

汇编语言里调用函数的过程和堆栈平衡问题_堆栈不平衡-程序员宅基地

文章浏览阅读707次,点赞2次,收藏3次。汇编语言里调用函数的过程和堆栈平衡问题文章目录汇编语言里调用函数的过程和堆栈平衡问题@[toc]1、汇编实例:简单函数调用时堆栈的变化过程1.调用函数前:传入参数2.调用函数时1.开辟空间(缓存区)2.保存现场3.覆盖缓存区4.执行函数的功能5.恢复现场6.恢复空间7.函数结尾:RENT3.总结2、堆栈平衡3、IDA堆栈不平衡问题:positive sp value has been found..._堆栈不平衡

@RequestBody注解基础_@requestbody object-程序员宅基地

文章浏览阅读744次,点赞10次,收藏6次。通过json字符串中的key来匹配对应实体类的属性,如果匹配一致且json中的该key对应的值符合实体类的对应属性的类型要求时,会调用实体类的setter方法将值注入到该属性。这种方式相对来说比较简单,我们将json解析成Map形式的key-value键值对,通过map.get(“Key”)就可以拿到值。@RequestBody 用于接收前端传递给后端的json字符串中的数据。(处理json格式的数据)@RequestBody注解一般与post方法使用。一个请求中只能存在一个@RequestBody注解。_@requestbody object

【读书笔记】看你能坚持读几本书?!——三十本互联网必看书籍_奋斗的书-程序员宅基地

文章浏览阅读4.3k次。读书的好处不用说,坚持下来真不易!尝试过各种方式,收听喜马讲书,微信读书,购买读书课程。本篇不定时更新,记录读书摘要和心得感受,欢迎交流!20181023 第三十本《娱乐至死》作者:尼尔 波兹曼1. 娱乐为什么能改变世界1.1 媒介的定义概念上,承载信息或内容的容器;传播上,用来传播信息的技术设备,人眼睛和耳朵的延伸;媒介即隐喻,如手表是了解时间的媒介;媒介即认识论,钟表以24小..._奋斗的书

Java中Cloneable接口的浅复制与深复制_java cloneable string-程序员宅基地

文章浏览阅读995次。Java中的深拷贝(深复制)和浅拷贝(浅复制) 深拷贝(深复制)和浅拷贝(浅复制)是两个比较通用的概念,尤其在C++语言中,若不弄懂,则会在delete的时候出问题,但是我们在这幸好用的是Java。虽然java自动管理对象的回收,但对于深拷贝(深复制)和浅拷贝(浅复制),我们还是要给予..._java cloneable string

c语言编写一函数 使输入的字符串按逆序,将n个数按输入时顺序的逆序排列 用函数实现 C语言...-程序员宅基地

文章浏览阅读1k次。将n个数按输入时顺序的逆序排列,用函数实现以下是此题的【c源代码】,需要【c++源代码】请点击进入#include int main(){void sort (char *p,int m);int i,n;char *p,num[20];printf("input n:");scanf("%d",&n);printf("please input these numbers:\n");for..._输入n个字符串用逆序连接

推荐文章

热门文章

相关标签