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

DLU-1064 美声葱

时间:2018-08-23 19:22:50      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:col   name   nbsp   mpi   tmp   bool   put   return   bre   

 1 #include <iostream>
 2 #include <stdlib.h>
 3 #include <string.h>
 4 #include <vector>
 5 #include <algorithm>
 6 
 7 using namespace std;
 8 bool CmpInt_1(int a,int b)
 9 {
10     return a<b;
11 }
12 
13 int main()
14 {
15     int n;
16     int i;
17     cin >> n;
18 
19     vector<int> ATtotal(n+10,0);
20     int ATtotal_end = 0;
21     int tmp_cnt = 0;
22     int ATnum = 0;
23     int CGnum = 0;
24     char tmp_inputchar;
25     for(i = 0;i < n;i ++)
26     {
27         cin >> tmp_inputchar;
28 
29         if(tmp_inputchar==A||tmp_inputchar==T)
30         {
31             tmp_cnt ++;
32             ATnum ++;
33         }
34         else if(tmp_inputchar==C||tmp_inputchar==G)
35         {
36             ATtotal[ATtotal_end++] = tmp_cnt;
37             tmp_cnt = 0;
38             CGnum ++;
39         }
40     }
41     
42     ATtotal[ATtotal_end++] = tmp_cnt;
43     sort(ATtotal.begin(),ATtotal.end(),CmpInt_1);
44 
45     int result = 0;
46     for(i = ATtotal.size()-1; i >=0; i --)
47     {
48         if(CGnum>=ATnum)
49         {
50             break;
51         }
52         else
53         {
54             CGnum += ATtotal[i];
55             ATnum -= ATtotal[i];
56             result ++;
57         }
58     }
59     cout << result << endl;
60 
61     return 0;
62 }

 

DLU-1064 美声葱

标签:col   name   nbsp   mpi   tmp   bool   put   return   bre   

原文地址:https://www.cnblogs.com/Asurudo/p/9525361.html

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