맵을 사용하여 해시 카운트를 사용, 큰 수 이므로 숫자가 아닌 문자열의 형태로 넣어 비교하는 문제였다
https://www.acmicpc.net/problem/10815
#include <bits/stdc++.h>
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int n, m;
string s;
unordered_map<string, int> mapi;
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> s;
mapi[s]++;
}
cin >> m;
cin >> s;
if(mapi[s] == 0)
{
cout << 0;
}
else
{
cout << 1;
}
for (int i = 1; i < m; i++)
{
cin >> s;
if(mapi[s] == 0)
{
cout << " " << 0;
}
else
{
cout << " " << 1;
}
}
return 0;
}
'개발 노트 > 백준, 프로그래머스 풀이' 카테고리의 다른 글
[백준 2748/c++]피보나치 수 2 (0) | 2022.07.17 |
---|---|
[백준 1676/c++] 팩토리얼 0의 개수 (0) | 2022.07.16 |
[백준 11866/c++] 요세푸스 문제 0 (0) | 2022.07.14 |
[백준 11652/c++] 카드 (0) | 2022.07.13 |
[백준 2581/c++] 소수 (0) | 2022.07.12 |
댓글