본문 바로가기
알고리즘/PROGRAMMERS

완주하지 못한 선수(Lv.1)

by 현대타운301 2024. 3. 21.

 


 

문제 설명

 

 

 

입출력 예시

 

 

요약

참가했는데 완주하지 못한 선수의 이름 찾기

 


 

풀이

 

접근 방식

1. 참가자 map 만들어서 완주자 배열에 없는 이름 찾기

  → hashmap과 keySet() 활용

 


 

코드리뷰

 

import java.util.*;

class Solution {
    public String solution(String[] participant, String[] completion) {
        String answer = "";
        HashMap<String, Integer> part = new HashMap<>();
        for(String str : participant) {
            part.put(str, part.getOrDefault(str, 0) + 1);	// map에 getOrDefault를 통해 기본 value = 1로 세팅
        }
        for(String str : completion) {
            part.put(str, part.get(str) - 1);	// 완주자 목록에 있으면  value -= 1
        }
        for(String key : part.keySet()) {
            if(part.get(key) == 1) {
                answer = key;	// value == 1인 player
                break;
            }
        }
        return answer;
    }
}

 

 

 

'알고리즘 > PROGRAMMERS' 카테고리의 다른 글

다트 게임(Lv.1)  (0) 2024.03.22
체육복(Lv.1)  (0) 2024.03.21
소수 찾기(Lv.2)  (0) 2024.03.21
크레인 인형뽑기 게임(Lv.1)  (0) 2024.03.21
키패드 누르기(Lv.1)  (0) 2024.03.21