https://www.acmicpc.net/problem/10816
접근 :
- 기존에 작성한 숫자 카드 글에서 map을 사용한 방식을 응용한다.
- map을 입력할 때, 중복 여부를 체크하고 중복 카운트를 value로 입력한다.
- 조회시에는 map에 키가 있으면 value 값을 없으면 0을 출력 하도록 한다.
코드 구현 :
import java.io.*;
import java.util.HashMap;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
// n 입력
int n = Integer.parseInt(br.readLine());
String[] inputs = br.readLine().split(" ");
HashMap<String, Integer> numbers = new HashMap<>();
// n 카드에 해당하는 숫자들 입력
for (int i = 0; i < n; i++) {
if (numbers.containsKey(inputs[i])) {
numbers.put(inputs[i], numbers.get(inputs[i]) + 1);
} else {
numbers.put(inputs[i], 1);
}
}
// m 입력
int m = Integer.parseInt(br.readLine());
inputs = br.readLine().split(" ");
for (int j = 0; j < m; j++) {
// 입력 받으 숫자에 해당하는 카드를 보유한 경우
if (numbers.containsKey(inputs[j])) {
sb.append(numbers.get(inputs[j])).append(" ");
// 해당하는 숫자를 보유하지 않는 경우
} else {
sb.append(0).append(" ");
}
}
System.out.println(sb);
br.close();
}
}
'JAVA > Coding Test' 카테고리의 다른 글
[JAVA] 백준 1269 대칭 차집합_집합과맵 (0) | 2023.03.05 |
---|---|
[JAVA] 백준 1764 듣보잡_집합과맵 (0) | 2023.03.04 |
[JAVA] 백준 1620 나는야 포켓몬 마스터 이다솜_집합과맵 (0) | 2023.03.03 |
[JAVA] 백준 14425 문자열 집합 (0) | 2023.03.02 |
[JAVA] 백준 10815 숫자카드_집합과맵 (0) | 2023.03.01 |