#DNA序列#C++,属于对长度一样子串的处理

#include <iostream>
#include <string>
#include <vector>
using namespace std;

int main()
{
    string str;
    int N;
    while (cin >> str)
    {
        cin >> N;
        int ratio = 0;
        vector <char> ss1, ss2;
        for (int i = 0; i < (str.size() - N + 1); i++)//i的值不能到最后一个
        {
            int temp = 0;

            for (int j = i; j < (i + N); j++)//子串,滑动窗口
            {
                ss1.push_back(str[j]);
                if (str[j] == 'G' || str[j] == 'C')
                {
                    temp++;
                }
            }
            if (temp > ratio)//记录第一个出现的含量最多的子串
            {
                ratio = temp;//记录出现的个数代表出现的比重,分母是一样的
                ss2 = ss1;//记录在ss2里
            }
            ss1.clear();
        }
        /*for (auto it : ss2)
            cout << it;*/
        for (vector<char>::iterator it = ss2.begin(); it != ss2.end(); it++)
        {
            cout << *it;
        }
        cout << endl;
    }
    return 0;
}