【題解】AtCoder 155C – Poll

【題目敘述】https://atcoder.jp/contests/abc155/tasks/abc155_c

#include <iostream>
#include <map>
#include <set>
#include <vector>
using namespace std;

int n, mx;
string s;
vector <string> v;
map <string, int> mp;
set <string> ans;

int main() {
    cin >> n;
    for (int i = 0; i < n; i++){
        cin >> s;
        mp[s]++;
        v.push_back(s);
    }
    for (int i = 0; i < v.size(); i++){
        if (ans.count(v[i])) continue;
        if (mp[v[i]] > mx){
            mx = mp[v[i]];
            ans.clear();
            ans.insert(v[i]);
        }
        else if (mp[v[i]] == mx){
            ans.insert(v[i]);
        }
    }
    for (set<string>::iterator it = ans.begin(); it != ans.end(); it++){
        cout << *it << "\n";
    }
}

分享本文 Share with friends