TopCoder SRM 497 DIV2
Rating: 892→883(灰)
167.02 Points
250: Filtering
ソートとかに迷いが生じてSubmitがすごい遅くなった。
167.02 Points
#include <vector> #include <string> #include <algorithm> #include <map> using namespace std; class Filtering { public: vector <int> designFilter(vector <int> sizes, string outcome){ map<int, char> ma; for(int i = 0; i < sizes.size(); i++){ ma[sizes[i]] = outcome[i]; } int idx = 0; for(map<int, char>::iterator it = ma.begin(); it != ma.end(); it++){ sizes[idx] = (*it).first; outcome[idx] = (*it).second; idx++; } int start, finish; if((start = outcome.find('A')) == string::npos){ return vector<int>(); } if((finish = outcome.rfind('A')) == string::npos){ return vector<int>(); } int t; if((t = outcome.find('R', start)) != string::npos){ if(t < finish){ return vector<int>(); } } vector<int> res; res.push_back(sizes[start]); res.push_back(sizes[finish]); return res; } };
500:
よく分からない。
1000:
読んでない