ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 백준 1764번 c++ 풀이
    백준 2018. 11. 18. 19:55
    반응형

    map의 해시성을 이용하면 상수 시간~ O(n) 안에 해결가능합니다.


    #include <iostream>
    #include <algorithm>
    #include <queue>
    #include <climits>
    #include <string>
    #include <map>
    using namespace std;

    int main(){
    cin.tie(NULL);
    ios::sync_with_stdio(false);

    int n, m;
    map<string, int> hash;
    cin >> n >> m;
    for (auto i=0; i<n; i++){
    string temp;
    cin >> temp;
    hash[temp]++;
    }
    for (auto i=0; i<m; i++){
    string temp;
    cin >> temp;
    hash[temp]++;
    }
    priority_queue<string, vector<string>, greater<>> pq;
    for (auto i : hash){
    if (i.second == 2){
    pq.push(i.first);
    }
    }
    cout << pq.size() << '\n';
    while (!pq.empty()){
    cout << pq.top() << '\n';
    pq.pop();
    }
    return 0;
    }


    반응형

    '백준' 카테고리의 다른 글

    백준 c++ 11053번 풀이  (0) 2018.11.19
    백준 11057번 c++ 풀이  (0) 2018.11.18
    백준 1427번 C++ 풀이  (0) 2018.11.18
    백준 1193번 c++ 풀이  (0) 2018.11.18
    백준 16504 C++ 풀이  (0) 2018.11.18
Designed by Tistory.