https://www.acmicpc.net/problem/10816
Array를 쓰기에는 시간초과가 일어날 것 같아 검색에 용이한 HashMap을 사용하였다.
import java.util.*;
import java.io.*;
public class Main10816 {
public static void main(String [] args){
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
StringBuilder sb = new StringBuilder();
HashMap<Integer, Integer> cards = new HashMap<>();
for(int i = 0; i < N; i++){
int num = sc.nextInt();
cards.put(num, cards.getOrDefault(num, 0)+1);
}
int M = sc.nextInt();
for(int i = 0; i < M; i++){
int searchNum = sc.nextInt();
if(cards.containsKey(searchNum)){
sb.append(cards.get(searchNum)).append(" ");
}
else{
sb.append(0).append(" ");
}
}
sb.delete(sb.length()-1, sb.length());
System.out.print(sb.toString());
}
}
해쉬