본문 바로가기

Programmers/Level1

완주하지 못한 선수

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import java.util.HashMap;
import java.util.Map.Entry;
 
class Solution {
    public String solution(String[] participant, String[] completion) {
        String answer = "";
        
        HashMap<String, Integer> map = new HashMap<>();
        for(String part : participant) {
            if(map.get(part) == null) {
                map.put(part, 0);
            }
            else
                map.put(part, map.get(part) + 1);
        }
        for(String com : completion)
            map.put(com, map.get(com) -1);
        
        for(Entry<String, Integer> entry : map.entrySet()) {
            if(entry.getValue() == 0)
                answer = entry.getKey();
        }
        
        return answer;
        
    }
}
cs

 

if문 대신 hashmap의 getOrDefault를 사용해도 된다.

map.getOrDefault(part, 0) + 1과 같이 사용가능하다.

part 값이 있으면 해당 value + 1을 사용하고 없으면 0 + 1을 사용한다.

 

'Programmers > Level1' 카테고리의 다른 글

소수 만들기  (0) 2021.06.24
K번째수  (0) 2021.06.24
체육복  (0) 2021.06.23
모든 레코드 조회하기  (0) 2021.06.22
폰켓몬  (0) 2021.06.22