[JAVA 문제 풀이] 304. 완주하지 못한 선수

프로그래머스 (42576)
Stupefyee's avatar
Jun 09, 2025
[JAVA 문제 풀이] 304. 완주하지 못한 선수
notion image
 

내가 작성한 코드

import java.util.*; class Solution { public String solution(String[] participant, String[] completion) { Arrays.sort(participant); Arrays.sort(completion); // 정렬 후 순차비교 for (int i = 0; i < completion.length; i++) { if (!participant[i].equals(completion[i])) { return participant[i]; } } // 마지막 사람이 완주하지 못한 경우 return participant[participant.length - 1]; } }
 

다른 사람의 코드

import java.util.HashMap; class Solution { public String solution(String[] participant, String[] completion) { String answer = ""; HashMap<String, Integer> hm = new HashMap<>(); // 중복처리 할 맵 for (String player : participant) hm.put(player, hm.getOrDefault(player, 0) + 1); // 참가자 모두 카운트 for (String player : completion) hm.put(player, hm.get(player) - 1); // 완주자 카운트다운 // 카운트가 0이 아니면 완주하지 못한 사람 for (String key : hm.keySet()) { if (hm.get(key) != 0){ answer = key; } } return answer; } }
 
Share article

stupefyee