반응형
SMALL
import java.util.*;
public class Main {
public String solution(String a,String b) {
String answer = "YES";
HashMap<Character,Integer> map = new HashMap<>();
for(char x: a.toCharArray()) {
map.put(x, map.getOrDefault(x, 0)+1);
}
for(char x: b.toCharArray()) {
// 해당하는 키가 없거나,
// -1을 하기도 전에 이미 0일 때 (갯수가 다르다는 뜻!)
if(!map.containsKey(x) || map.get(x)==0) return "NO";
map.put(x,map.get(x)-1);
}
return answer;
}
public static void main(String[] args) {
Main T = new Main();
Scanner kb = new Scanner(System.in);
String a = kb.next();
String b = kb.next();
System.out.print(T.solution(a,b));
}
}
# 기억할 부분
for(char x: b.toCharArray()) {
if(!map.containsKey(x) || map.get(x)==0) return "NO";
map.put(x,map.get(x)-1);
}
이부분에서 if( map.containsKey(x) ) {} ~ 로 접근한 것이 아니라,
if( !map.containsKey(x) ) ~ 로 접근한 것 기억하기!!
반응형
LIST
'자바 알고리즘' 카테고리의 다른 글
백준 9012번: 괄호 - StringBuilder 잘 활용하기(cf. sb.deleteCharAt(i)) (0) | 2024.11.17 |
---|---|
20. 학급회장 (HashMap) (0) | 2022.09.12 |
19. 연속된 자연수의 합 (수학) (0) | 2022.08.10 |
18. 연속된 자연수의 합 (0) | 2022.08.09 |
17. 연속 부분 수열 (sliding window + 복합) (0) | 2022.08.08 |
댓글