Strong Root

난이도 ★

 

문제를 보시려면 여기를 클릭

 

 

 

힌트

동명이인에 주의할 것.
그래서 Set 대신 Map 을 써야한다.

 

 

 

이하는 코드입니다.

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
28
29
30
31
32
33
34
import java.util.HashMap;
import java.util.Map;
 
public class Solution {
    public String solution(String[] participant, String[] completion) {
        Map<String, Integer> completionSet = new HashMap<>();
 
        for (String name : completion) {
            Integer count = completionSet.get(name);
 
            if (count == null) {
                completionSet.put(name, 1);
            } else {
                completionSet.put(name, count + 1);
            }
        }
 
        for (String name : participant) {
            Integer count = completionSet.get(name);
 
            if (count == null) {
                return name;
            }
 
            if (count < 2) {
                completionSet.remove(name);
            } else {
                completionSet.put(name, count - 1);
            }
        }
 
        return null;
    }
}
cs