‘프로그래머스 코딩테스트 고득점 Kit’ 문제 입니다. 😀
문제 👉 <코딩테스트 연습 - 완주하지 못한 선수 | 프로그래머스>
1. 문제
- 마라톤에 참여한 선수 participant 와 마라톤을 완주한 선수 completion 을 통해 완주하지 못한 1명을 찾아라.
- 참가자 중에는 동명이인이 있다.
- 참가자의 이름은 1개 이상 20개 이하이며 알파벳 소문자로 이루어져 있다.
2. 풀이
해시
를 이용한 문제 풀이
- key는 완주한 선수의 이름을 value는 해당 선수의 이름을 카운트하는 Hash를 생성한다.
- 참가자와 완주한 선수의 Hash를 통해 완주하지 못한 1명을 찾는다.
3. 코드
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
HashMap<String, Integer> hm = new HashMap<>();
for (String p : participant) {
hm.put(p, hm.getOrDefault(p, 0) + 1);
}
for (String c : completion) {
hm.put(c, hm.get(c) - 1);
}
for (String key : hm.keySet()) {
if (hm.get(key) != 0){
answer = key;
}
}
return answer;
}
}
References
🏋🏻 개인적으로 공부한 내용을 기록하고 있습니다.
잘못된 부분이 있다면 과감하게 지적해주세요!! 🏋
'Coding Test > Programmers' 카테고리의 다른 글
[프로그래머스] 베스트앨범 [JAVA(자바)] (0) | 2021.11.25 |
---|---|
[프로그래머스] 위장 [JAVA(자바)] (0) | 2021.11.25 |
[프로그래머스] 전화번호 목록 [JAVA(자바)] (0) | 2021.11.25 |
댓글