728x90
반응형
1269번: 대칭 차집합
문제
https://www.acmicpc.net/problem/1269
풀이
C++ STL인 map을 사용하여 쉽게 풀 수 있다. A, B 집합을 입력받고 A집합에 없는 B집합의 원소의 수, B집합에 없는 A집합의 원소의 수를 구해 더한다.
코드
#include <bits/stdc++.h>
using namespace std;
int main() {
// 입력
int n, m, cnt = 0, x;
cin >> n >> m;
map<int, bool> A, B;
for (int i = 0; i < n; i++) {
cin >> x;
A.insert(make_pair(x, true));
}
for (int i = 0; i < m; i++) {
cin >> x;
B.insert(make_pair(x, true));
}
// A집합에 없는 B집합의 원소 수
for (auto i = B.begin(); i != B.end(); i++)
if (!A[i->first])
cnt++;
// B집합에 없는 A집합의 원소 수
for (auto i = A.begin(); i != A.end(); i++)
if (!B[i->first])
cnt++;
cout << cnt << '\n';
return 0;
}
728x90
반응형
'Problem Solving > BOJ' 카테고리의 다른 글
[백준 / BOJ] C++ 9252 LCS 2 (0) | 2023.02.15 |
---|---|
[백준 / BOJ] C++ 9251 LCS (0) | 2023.02.15 |
[백준 / BOJ] C++ 1267 핸드폰 요금 (0) | 2023.02.14 |
[백준 / BOJ] C++ 14622 소수 게임 (0) | 2023.02.14 |
[백준 / BOJ] C++ 14490 백대열 (0) | 2023.02.13 |