문제 풀이 :
1. hash 자료구조를 이용한다.
2. getOrDefault 메소드를 활용하여 파라미터로 받은 참가자(participant), 완주자(completion) 데이터를 hash에 저장한다.
2-1. getOrDefault : 중복된 참가자(key)가 존재한다면 value에 +1
3. hash의 value값이 0이 아닌것만 리턴
소스 코드 :
import java.util.*; class Solution { public String solution(String[] participant, String[] completion) { Map<String, Integer> hash = new HashMap<>(); for (String s : participant) hash.put(s, hash.getOrDefault(s, 0) + 1); for (String s : completion) hash.put(s, hash.getOrDefault(s, 0) - 1); for (String key : hash.keySet()) { if (hash.get(key) != 0) return key; } return null; } }