配对碱基链
题目描述
脱氧核糖核酸(DNA)由两条互补的碱基链以双螺旋的方式结合而成。
而构成 DNA 的碱基共有 4 4 4 种:
-
分别为腺嘌呤( A A A)
-
鸟嘌呤( G G G)
-
胸腺嘧啶( T T T)
-
胞嘧啶( C C C)
我们知道,在两条互补碱基链的对应位置上,腺嘌呤总是和胸腺嘧啶配对,鸟嘌呤总是和胞嘧啶配对。
你的任务就是根据一条单链上的碱基序列,给出对应的互补链上的碱基序列。
输入格式
一个字符串,表示一条碱基链。
这个字符串只含有大写字母 A A A 、 T T T 、 G G G 、 C C C,分别表示腺嘌呤、胸腺嘧啶、鸟嘌呤和胞嘧啶。
字符串长度不超过 255 255 255。
输出格式
一个只含有大写字母 A A A 、 T T T 、 G G G 、 C C C 的字符串,为与输入的碱基链互补的碱基链。
样例 #1
样例输入 #1
ATATGGATGGTGTTTGGCTCTG
样例输出 #1
TATACCTACCACAAACCGAGAC
代码内容
// #include <iostream>
// #include <algorithm>
// #include <cstring>
// #include <sstream>//整型转字符串
// #include <stack>//栈
// #include <deque>//堆/优先队列
// #include <queue>//队列
// #include <map>//映射
// #include <unordered_map>//哈希表
// #include <vector>//容器,存数组的数,表数组的长度
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
string s;
cin>>s;
for(auto &t:s)
{
if(t=='A') cout<<"T";
else if(t=='G') cout<<"C";
else if(t=='T') cout<<"A";
else if(t=='C') cout<<"G";
}
return 0;
}