-
백준 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