728x90
반응형
https://www.acmicpc.net/problem/1764
문제
김진영이 듣도 못한 사람의 명단과, 보도 못한 사람의 명단이 주어질 때, 듣도 보도 못한 사람의 명단을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. 이름은 띄어쓰기 없이 영어 소문자로만 이루어지며, 그 길이는 20 이하이다. N, M은 500,000 이하의 자연수이다.
듣도 못한 사람의 명단에는 중복되는 이름이 없으며, 보도 못한 사람의 명단도 마찬가지이다.
출력
듣보잡의 수와 그 명단을 사전순으로 출력한다.
C++ STL에서 지원하는 map을 이용하여 쉽게 해결할 수 있는 문제이다.
#include <iostream>
#include <list>
#include <queue>
#include <stack>
#include <string>
#include <cstring>
#include <vector>
#include <map>
#include <algorithm>
#include <cmath>
#include <bitset>
#define INF 987654321
#define CUNLINK ios::sync_with_stdio(false),cin.tie(0), cout.tie(0)
using namespace std;
int main() {
CUNLINK;
vector<string> answer;
map<string, int> m;
int N, M;
cin >> N >> M;
for (int i = 0; i < N; i++) {
string Name; cin >> Name;
m[Name]++;
}
for (int i = 0; i < M; i++) {
string Name; cin >> Name;
m[Name]++;
if (m[Name] >= 2) answer.push_back(Name);
}
cout << answer.size() << endl;
sort(answer.begin(), answer.end());
for (auto a : answer) cout << a << endl;
return 0;
}
728x90
반응형
'BOJ > 문자열 (해시,맵)' 카테고리의 다른 글
[Python] 백준 - 5525번 : IOIOI (0) | 2021.12.17 |
---|---|
[Python] 백준 - 11365번 : !밀비 급일 (0) | 2021.10.09 |
[Python] 백준 - 3029번 : 경고 (0) | 2021.10.09 |
[Python] 백준 - 1302번 : 베스트셀러 (0) | 2021.09.14 |
[Python] 백준 - 4358번 : 생태학 (0) | 2021.09.14 |