#include<iostream>
#include<map>
using namespace std;
int main() {
cin.tie(NULL);
cout.tie(NULL);
ios::sync_with_stdio(false);
int n, m;
int input;
map<int, int> card;
cin >> n;
for (int i = 0; i < n; i++) {
cin >> input;
if (card.count(input) > 0) {
card[input]++;
}
else {
card[input] = 1;
}
}
cin >> m;
for (int i = 0; i < m; i++) {
cin >> input;
cout << card[input] << " ";
}
}
맵을 이용해서 풀었다.
card.count(input)을 이용해서 이전에 입력된 값이었는지 아닌지를 판별해서 빈도수를 저장하였다.
출력할 때에는 card[input]을 출력해주었고 출력 양식에 맞게 " "를 추가해주었다.