완주하지 못한 선수
https://school.programmers.co.kr/learn/courses/30/lessons/42576
function solution(participant, completion) {
const map = new Map();
participant.forEach(v => map.set(v , (map.get(v) || 0) + 1));
completion.forEach(v => map.set(v, (map.get(v) || 0) - 1));
for (const [v, value] of map) {
if (value) {
return v;
}
}
}
해시 Map 함수를 이용해서 쉽게 풀어보기
participant 배열 (참가자)에 key 값 마다 value 값을 +1을 해주고
completion 배열 (완주한 참가자)을 체크해서 완주한 참가자의 value 값을 -1 시켜준다.
그런 후 value 값이 +1로 남아 있는 참가자를 리턴해주면 된다!
(완주를 했으면 value 값이 1-1로 0이 될테니까)
'우코딩 코딩테스트 일기 > JavaScript 코딩테스트 (Lv. 1)' 카테고리의 다른 글
JavaScript 코딩테스트 Lv.1 (정수 내림차순으로 배치하기) (1) | 2024.06.04 |
---|---|
JavaScript 코딩테스트 Lv.1 (자릿수 더하기) (1) | 2024.06.03 |
JavaScript 코딩테스트 Lv.1 (부족한 금액 계산하기) (0) | 2024.05.31 |
JavaScript 코딩테스트 Lv.1 (제일 작은 수 제거하기) (0) | 2024.05.31 |
JavaScript 코딩테스트 Lv. 1 (문자열내 p와 y의 개수) (0) | 2024.05.31 |