프로그래머스 완주하지 못한 선수
풀이
처음에 ArrayList로 담아서 contains로 접근헀지만 몇몇 케이스가 시간 초과가 나와 HashMap으로 다시 풀었다.
소요 시간 약 20분
내가 푼 풀이
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
HashMap<String, Integer> hash = new HashMap<>();
String answer = "";
for(String name : participant) hash.put(name, hash.getOrDefault(name,0) + 1);
for(String name : completion) hash.put(name, hash.get(name)-1);
for(String name : hash.keySet()){
if(hash.get(name) != 0)
answer = name;
}
return answer;
}
}