- 这种滑动的建议用带pair的vector,用字典会覆盖。
#include<bits/stdc++.h> using namespace std; int N; float cal(string s){ float num =0; for(int i=0; i< s.size();i++){ if(s[i]=='C'|| s[i]=='G'){ num++; } } return num/N; } int main(){ string s; while(cin>>s>>N){ float ratio; vector<pair<float,string>> v; float max_ratio =0.0; for(int i = 0; i<= s.size()-N;i++){ ratio = cal(s.substr(i,N)); v.push_back({ratio,s.substr(i,N)}); max_ratio = max(max_ratio,ratio); } for(auto it = v.begin();it!=v.end();it++){ if(it->first==max_ratio){ cout<<it->second<<endl; break; } } } return 0; }