반응형
풀이방법
1. a에 대한 원소를 key, 나온 빈도를 value로 한 map 자료구조를 만듭니다.
2. b의 원소를 map에서 key로 하여 검색했을 때 값이 있다면 a와 공집합에 대한 원소이므로 세줍니다.
3. 답출력 : a원소 개수 + b원소 개수 - (공집합 원소의 개수 * 2)를 출력해줍니다.
Code
#include <bits/stdc++.h>
using namespace std;
map <int,int> m;
int aSize,bSize, ans;
int a[200001];
int b[200001];
int main(){
cin >> aSize >> bSize;
for(int i = 0; i < aSize; i++) cin >> a[i];
for(int i = 0; i < bSize; i++) cin >> b[i];
for(int i = 0; i < aSize; i++) m[a[i]]++;
for(int i = 0; i < bSize; i++) if(m[b[i]]) ans++;
cout << aSize + bSize - ans * 2 <<'\n';
}
'Algorithm > Implementation' 카테고리의 다른 글
(C++) - 백준(BOJ) 1822번 : 차집합 답 (0) | 2021.01.11 |
---|---|
(C++) - 백준(BOJ) 1302번 : 베스트셀러 답 (2) | 2021.01.11 |
(C++) - 백준(BOJ) 1021번 : 회전하는 큐 답 (0) | 2021.01.10 |
(C++) - 백준(BOJ) 14891번 : 톱니바퀴 답 (0) | 2021.01.10 |
(C++) - 백준(BOJ) 13300번 : 방 배정 답 (0) | 2021.01.09 |