※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 32978번 문제인 아 맞다 마늘이다.
문제는 아래 링크를 확인하자.

https://www.acmicpc.net/problem/32978

 

앞서 등장한 \(N\)가지 재료 중, 뒤에 주어진 \(N-1\)개의 재료 목록에서 빠진 재료를 찾는 문제이다.

 

재료의 수가 충분히 많으므로 각 앞서 주어진 재료마다 뒤에 주어진 재료 목록에 그 재료가 있는지 확인하는 것으로 문제를 충분히 해결할 수 있다.

 

다른 방법으로 set 자료구조에 \(N\)가지 재료를 모두 저장한 다음 \(N-1\)개의 재료를 set에서 제거하여 남는 재료를 찾을 수도 있다.

 

아래는 제출한 소스코드이다.

#include <iostream>
#include <set>
#include <string>
using namespace std;

int N;
set<string> st;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	cin >> N;
	for (int i = 0; i < N; i++) {
		string s; cin >> s;
		st.insert(s);
	}
	for (int i = 1; i < N; i++) {
		string s; cin >> s;
		st.erase(s);
	}
	cout << *st.begin();
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 33118 // C++] ICPC Provincial  (0) 2025.01.06
[BOJ 32980 // C++] 분리배출  (0) 2025.01.03
[BOJ 33026 // C++] LOL Lovers  (0) 2024.12.30
[BOJ 2415 // C++] 직사각형  (0) 2024.12.28
[BOJ 27947 // C++] 가지 밭 게임  (1) 2024.12.27

+ Recent posts