No Rules Rules

베스트셀러 (feat. 백준, 1302번) 본문

생활/코테

베스트셀러 (feat. 백준, 1302번)

개발하는 완두콩 2022. 11. 9. 16:25
728x90
반응형

베스트셀러
https://www.acmicpc.net/problem/1302

 

1302번: 베스트셀러

첫째 줄에 오늘 하루 동안 팔린 책의 개수 N이 주어진다. 이 값은 1,000보다 작거나 같은 자연수이다. 둘째부터 N개의 줄에 책의 제목이 입력으로 들어온다. 책의 제목의 길이는 50보다 작거나 같고

www.acmicpc.net

 

// woohyeon.kim
// kim519620.tistory.com
#include <iostream>
#include <string>
#include <map>
#include <vector>
#include <algorithm>
using namespace std;
bool cmp(const pair<string, int>& v1, const pair<string, int>& v2){
    if(v1.second == v2.second)
        return v1.first < v2.first;
    return v1.second > v2.second;
}
int main() {
	ios::sync_with_stdio(false), cin.tie(NULL);
    register int N;
    map<string, int> arr;
    string str;
    cin >> N;
    for(register int n = 0; n < N; ++n)
        cin >> str, ++arr[str];
    vector<pair<string, int>> ans(arr.begin(), arr.end());
    sort(ans.begin(), ans.end(), cmp);
    cout << ans.front().first;
	return 0;
}
// *&)*@*

 

반응형

자료구조 map을 vector로 변경하여 sort의 predicate를 정의하면 쉽게 해결할 수 있습니다.

728x90
반응형
Comments