码迷,mamicode.com
首页 > 其他好文 > 详细

DNA合成--全国模拟(一)

时间:2017-06-16 16:49:20      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:成功   namespace   序列   限制   ios   break   new   font   pre   

[编程题] DNA合成
时间限制:1秒
空间限制:32768K
DNA分子是以4种脱氧核苷酸为单位连接而成的长链,这4种脱氧核苷酸分别含有A,T,C,G四种碱基。碱基互补配对原则:A和T是配对的,C和G是配对的。如果两条碱基链长度是相同的并且每个位置的碱基是配对的,那么他们就可以配对合成为DNA的双螺旋结构。现在给出两条碱基链,允许在其中一条上做替换操作:把序列上的某个位置的碱基更换为另外一种碱基。问最少需要多少次让两条碱基链配对成功 
输入描述:
输入包括一行: 包括两个字符串,分别表示两条链,两个字符串长度相同且长度均小于等于50。
 
 
输出描述:
输出一个整数,即最少需要多少次让两条碱基链配对成功
 
输入例子:
ACGT TGCA
 
输出例子:
0
 
解题思路:以字符串a为基准,按位看b是否与之匹配,不匹配count++,匹配比较下一字符
 1 #include <iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     string a;
 6     string b;
 7     while(cin>>a>>b)
 8     {
 9         int count = 0;
10         int length_a = a.size();
11         int length_b = b.size();
12         for(int i = 0;i<length_a;i++)
13         {
14             switch(a[i])
15             {
16             case A:
17                 if(b[i] == T)
18                     break;
19                 else
20                 {
21                     count++;
22                     break;
23                 }
24             case C:
25                 if(b[i] == G)
26                     break;
27                 else
28                 {
29                     count++;
30                     break;
31                 }
32             case G:
33                 if(b[i] == C)
34                     break;
35                 else
36                 {
37                     count++;
38                     break;
39                 }
40             case T:
41                 if(b[i] == A)
42                     break;
43                 else
44                 {
45                     count++;
46                     break;
47                 }
48             }
49         }
50         cout<<count<<endl;
51     }
52     return 0;
53 }


 

DNA合成--全国模拟(一)

标签:成功   namespace   序列   限制   ios   break   new   font   pre   

原文地址:http://www.cnblogs.com/qqky/p/7027571.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!