https://www.acmicpc.net/problem/10816
맵을 사용한다. 입력받은 숫자를 키로 사용하고, 입력받은 숫자가 맵에 존재하지 않는 경우도 고려해
map.getOrDefault()
를 사용한다.
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int n = Integer.parseInt(br.readLine());
StringTokenizer st = new StringTokenizer(br.readLine());
HashMap<Integer, Integer> map = new HashMap<>();
for (int i = 0; i < n; i++) {
int num = Integer.parseInt(st.nextToken());
map.put(num, map.getOrDefault(num, 0) + 1);
}
int m = Integer.parseInt(br.readLine());
st = new StringTokenizer(br.readLine());
for (int i = 0; i < m; i++) {
int num = Integer.parseInt(st.nextToken());
bw.write(map.getOrDefault(num, 0)+ " ");
}
bw.flush();
bw.close();
}
}