Simple&Natural

Hash - 완주하지 못한 선수 본문

코딩테스트 풀이/프로그래머스

Hash - 완주하지 못한 선수

Essense 2022. 4. 23. 21:18
728x90

예전에 무턱대고 감으로만 풀었던 문제들을 유형별로 정리하며 다시 분석하고 있다.

 

 

import java.util.HashMap;
import java.util.Map;

class Solution {
    public String solution(String[] participant, String[] completion) {
        String answer = "";
        
        HashMap<String, Integer> hashMap = new HashMap<>();
        
        for (String eachParticipant : participant) {
            hashMap.put(eachParticipant, hashMap.getOrDefault(eachParticipant, 0)+1);
        }
        
        for (String eachCompletion : completion) {
            if (hashMap.containsKey(eachCompletion)) {
               hashMap.put(eachCompletion, hashMap.getOrDefault(eachCompletion, 0)-1);
            }
        }
        
        loop: for (Map.Entry<String, Integer> entry : hashMap.entrySet()) {
            if (entry.getValue() == 1) {
                answer = entry.getKey();
                break loop;
            }
        }
        
        return answer;
    }
}
728x90