반응형
해쉬맵 사용해보려고 풀어봤던 문제
Idea
해쉬맵은 키가 distinct하기 때문에 키별로 value를 +1씩 증가하면서 입력 받음
M배열로 입력받르떼 키값을 찾아 있으면 value를 return, 아니면 0return 하여 코드작성
문제점
시간초과가나서 해쉬맵으로 풀면 안되는줄 알았는데 StringBuilder를 사용해서 풀었더니 해결됨
package boj;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.StringTokenizer;
public class boj10816_숫자카드2 {
private static int N;
private static int[] cardN;
private static int M;
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
N = Integer.parseInt(br.readLine());
HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
for(int i =0 ;i<N ;i++) {
int temp = Integer.parseInt(st.nextToken());
if(!map.containsKey(temp)) {
map.put(temp, 1);
}
else {
map.put(temp,map.get(temp)+1);
}
}
M= Integer.parseInt(br.readLine());
cardN = new int[M];
st = new StringTokenizer(br.readLine(), " ");
for(int i =0 ;i<M; i++) {
int temp2 = Integer.parseInt(st.nextToken());
if(map.containsKey(temp2)) {
sb.append( map.get(temp2)+" ");
}else {
sb.append( 0+ " ");
}
}
System.out.println(sb.toString());
}
}
반응형
'Algorithms' 카테고리의 다른 글
[Algorithms] 백준 비밀번호 찾기 (0) | 2020.11.05 |
---|---|
[Algorithms] 백준 7662 이중 우선순위큐 (0) | 2020.11.05 |
[Algorithms] 백준 14891 톱니바퀴 (0) | 2020.10.28 |
[Algorithms] 백준 18870 좌표 압축 (0) | 2020.10.21 |
[Algorithms] 백준 17698 막대기 문제 (0) | 2020.09.23 |