题解 | #DNA序列#
DNA序列
https://www.nowcoder.com/practice/e8480ed7501640709354db1cc4ffd42a
#include <iostream> #include<string> #include<vector> using namespace std; int main() { string str; cin >> str; int n; cin >> n; int j, sum; vector<char> s; float GCratio = 0, maxRatio = 0; for (int i = 0; i < str.size() - n + 1; i++) { j = 0; sum = 0; while (j < n) { if (str[i + j] == 'C' || str[i + j] == 'G') { sum++; } j++; } GCratio = (float)sum / n; if (maxRatio < GCratio) { maxRatio = GCratio; s.clear(); for (int k = 0; k < n; k++) { s.push_back(str[i + k]); } } } for (int k = 0; k < n; k++) { cout << s[k]; } return 0; }