💡풀이
// 1. map에 담고 하나씩 차감한다?
// 마지막 남은애는 어떻게 찾게
// 2. 그냥 set에 넣는다?
// 중복이 사라져버림
// 3. 1명 적은 completion을 맵에 집어넣는다 <String, Integer>
// participant를 순차적으로 제거하는데 만약 map에 존재하지않으면 해당 이름을 반환한다
import java.util.HashMap;
import java.util.Map;
class Solution {
public String solution(String[] participant, String[] completion) {
Map<String, Integer> map = new HashMap<>();
for(String player : completion) {
map.put(player, map.getOrDefault(player, 0) + 1);
}
for(String player : participant) {
int count = map.getOrDefault(player, -1);
if(count < 1) {
return player;
} else {
map.put(player, count - 1);
}
}
return ""; // 반복문을 통해 미완주자를 못찾는 경우는 존재하지 않음
}
}
GitHub - okjunghyeon/Programmers_CodingTest: 프로그래머스 관련 코딩테스트 문제를 풀이한 저장소입니다.
프로그래머스 관련 코딩테스트 문제를 풀이한 저장소입니다. Contribute to okjunghyeon/Programmers_CodingTest development by creating an account on GitHub.
github.com
'CodingTest > Programmers' 카테고리의 다른 글
[프로그래머스, Java] 숫자 짝꿍 (0) | 2025.07.21 |
---|---|
[프로그래머스, Java] 체육복 (0) | 2025.07.21 |
[프로그래머스, Java][PCCE 기출문제] 9번 / 이웃한 칸 (0) | 2025.07.18 |
[프로그래머스, Java] 대충 만든 자판 (0) | 2025.07.18 |
[프로그래머스, Java] 문자열 나누기 (0) | 2025.07.18 |