ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [백준 1764] 듣보잡
    알고리즘/백준 2019. 5. 17. 00:30


     N과 M의 제한이 50만이기 때문에

    정렬을 사용하지 않고

     STL의 set을 사용했다.


    set<string>을 사용하여 입력과 동시에 정렬이 가능하게 하였다.

     

     우선 듣지 못한 사람, 모두를 set<string> s에 넣고

     본적 없는 사람이, 들어보지도 못했다면

      if(s.find() != s.end())

     set<string> ans에 insert시키는 방식이다.




    출처 : https://www.acmicpc.net/problem/1764


    문제

    김진영이 듣도 못한 사람의 명단과, 보도 못한 사람의 명단이 주어질 때, 듣도 보도 못한 사람의 명단을 구하는 프로그램을 작성하시오.

    입력

    첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. 이름은 띄어쓰기 없이 영어 소문자로만 이루어지며, 그 길이는 20 이하이다. N, M은 500,000 이하의 자연수이다.

    출력

    듣보잡의 수와 그 명단을 사전순으로 출력한다.

    예제 입력 1

    3 4
    ohhenrie
    charlie
    baesangwook
    obama
    baesangwook
    ohhenrie
    clinton
    

    예제 출력 1

    2
    baesangwook
    ohhenrie
    



    소스코드

    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
    #include<iostream>
    #include<set>
    #include<string>
     
    using namespace std;
     
    int main(void) {
        int n, m;
        set<string> s;
        set<string> ans;
        cin >> n >> m;
        while (n--) {
            string name;
            cin >> name;
            s.insert(name);
        }
        while (m--) {
            string name;
            cin >> name;
            auto it = s.find(name);
            if (it != s.end())
                ans.insert(name);
        }
        cout << ans.size() << '\n';
        set<string>::iterator iter;
        for (iter = ans.begin(); iter != ans.end(); iter++) {
            cout << *iter << '\n';
        }
        return 0;
    }
    cs


    ※ 본 글은 개인 포트폴리오 혹은 공부용으로 사용하기 때문에, 무단 복사 유포는 금지하지만, 개인 공부 용도로는 얼마든지 사용하셔도 좋습니다




    반응형

    '알고리즘 > 백준' 카테고리의 다른 글

    [백준 9093] 단어 뒤집기 (cpp, stack)  (0) 2021.12.12
    [백준 10828] 스택 (cpp, stack)  (0) 2021.12.12
    [백준 7785] 회사에 있는 사람  (0) 2019.05.17
    [백준 1927] 최소 힙  (0) 2019.05.13
Designed by Tistory.