백준/1269/자료구조(map)/대칭 차집

유기태·2024년 1월 25일

백준/1269/자료구조(map)/대칭 차집

문제 해석

A,B의 합집합에서 서로 겹친 교집합의 크기를 빼는 문제이다.

문제 풀이

map에 모든 수를 담으면 자연스럽게 합집합(map은 중복된 자료를 제한한다)이 만들어지고 여기서 find 함수를 통해 교집합의 크기를 구해준다.

풀이

첫번째 풀이

#include<iostream>
#include<map>
using namespace std;

map<int, int>_A;

int main()
{
	int A, B = 0;
	int result = 0;
	cin >> A >> B;

	int num = 0;
	for (int i = 0;i < A;i++)
	{
		cin >> num;
		_A.insert(make_pair(num, num));
	}

	for (int i = 0;i < B;i++)
	{
		cin >> num;
		map<int,int>::iterator iter = _A.find(num);
		if (iter != _A.end())
		{
			result++;
		}
		_A.insert(make_pair(num,num));
	}

	cout << _A.size() - result;

	return 0;
}
profile
게임프로그래머 지망!

0개의 댓글