알고리즘/PROGRAMMERS
완주하지 못한 선수(Lv.1)
현대타운301
2024. 3. 21. 23:17
문제 설명
입출력 예시
요약
참가했는데 완주하지 못한 선수의 이름 찾기
풀이
접근 방식
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;
}
}