백준 1764: 듣보잡 / C++

2023. 2. 1. 17:11개인공부/코딩테스트

1764번: 듣보잡 (acmicpc.net)

 

1764번: 듣보잡

첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다.

www.acmicpc.net

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <iostream>
#include <map>
 
using namespace std;
 
int main()
{
    cin.tie(NULL);
    ios::sync_with_stdio(false);
    
    int NeverHeard = 0, NeverSeen = 0;
    int NeverHeardSeen = 0;
 
    map < stringbool > Person;
 
    cin >> NeverHeard >> NeverSeen;
        
    for (int i = 0; i < NeverHeard; ++i)
    {
        string str;
        cin >> str;
 
        Person.insert(pair<stringbool>(str, false));
    }
 
    for (int i = 0; i < NeverSeen; ++i)
    {
        string str;
        cin >> str;
        if (Person.find(str) != Person.end())
        {
            Person.find(str)->second = true;
            ++NeverHeardSeen;
        }
    }
    cout << NeverHeardSeen << '\n';
    for (auto iter = Person.begin(); iter != Person.end(); ++iter)
    {
        if (iter->second == true)
        {
            cout << iter->first << '\n';
        }
    }
    
    return 0;
}
cs