★[JAVA/프로그래머스] LV.1 완주하지 못한 선수

윤소영·2023년 10월 24일
0

JAVA

목록 보기
27/41

문제



문제 답안

import java.util.*;

class Solution {
    public String solution(String[] participant, String[] completion) {
        Map <String, Integer> player = new Hashtable<>(); // 쉽게 말하면 중복되면 +1해주는거임(동명이인이 있을 수 있으므로)
        
        for(String c : completion){
            player.put(c, player.getOrDefault(c, 0) + 1);
        }
        
        for(String p : participant){
            if(!player.containsKey(p))
                return p; // participant[i] 종료
            int count = player.get(p) - 1; // p 키를 가진 value get
            if(count > 0)
                player.put(p, count);
            else
                player.remove(p);
        }
        return "";
    }
}



답안 풀이

주석 참조
*getOrDefault(key, 이 key의 매핑된 value가 없으면 넣을 반환될 기본값)

0개의 댓글