듣보잡 1764

PublicMinsu·2023년 8월 21일
0

문제

접근 방법

중복되지 않은 입력이 들어온다는 점에서 1개의 map을 활용하면 된다.
map으로 횟수를 세어주었을 때 2개가 된다면 듣도 보도 못한 사람이라는 것이다.

코드

#include <iostream>
#include <unordered_map>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
    ios::sync_with_stdio(0), cin.tie(0);
    unordered_map<string, int> people;
    vector<string> ret;
    int N, M;
    cin >> N >> M;
    N += M;
    while (N--)
    {
        string name;
        cin >> name;
        ++people[name];
        if (people[name] == 2)
            ret.push_back(name);
    }
    sort(ret.begin(), ret.end());
    cout << ret.size() << "\n";
    for (string name : ret)
        cout << name << "\n";
    return 0;
}

풀이

출력하기 전의 정렬해 주고 출력하면 된다.

profile
연락 : publicminsu@naver.com

0개의 댓글