728x90
반응형
map
- 제목
듣보잡
- 조건
시간 제한 : 2 초
메모리 제한 : 256 MB
- 문제
김진영이 듣도 못한 사람의 명단과, 보도 못한 사람의 명단이 주어질 때, 듣도 보도 못한 사람의 명단을 구하는 프로그램을 작성하시오.
- 입력
첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. 이름은 띄어쓰기 없이 알파벳 소문자로만 이루어지며, 그 길이는 20 이하이다. N, M은 500,000 이하의 자연수이다.
듣도 못한 사람의 명단에는 중복되는 이름이 없으며, 보도 못한 사람의 명단도 마찬가지이다.
- 출력
듣보잡의 수와 그 명단을 사전순으로 출력한다.
예제 입력1 | 예제 출력1 |
3 4 ohhenrie charlie baesangwook obama baesangwook ohhenrie clinton |
2 baesangwook ohhenrie |
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
#include <map>
using namespace std;
#define endl '\n'
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
map<string, int> dict;
int N, M;
string name;
cin >> N >> M;
while(N--){
cin >> name;
dict[name] = 1;
}
while(M--){
cin >> name;
if(dict.find(name) == dict.end()) dict[name] = 1;
else dict[name] = 2;
}
vector<string> dbj;
for(auto iter = dict.begin() ; iter != dict.end() ; iter++){
if(iter->second == 2) dbj.push_back(iter->first);
}
sort(dbj.begin(), dbj.end());
cout << dbj.size() << endl;
for(int n = 0 ; n < dbj.size() ; n++) cout << dbj[n] << endl;
return 0;
}
728x90
반응형
'Problem Solving > BaekJoon' 카테고리의 다른 글
[BOJ/백준] 4696 - St. Ives (0) | 2022.08.21 |
---|---|
[BOJ/백준] 1620 - 나는야 포켓몬 마스터 이다솜 (0) | 2022.08.21 |
[BOJ/백준] 2805 - 나무 자르기 (0) | 2022.08.20 |
[BOJ/백준] 1197 - 최소 스패닝 트리 (0) | 2022.08.20 |
[BOJ/백준] 1967 - 트리의 지름 (0) | 2022.08.20 |