[algorithm] - 완주하지 못한 선수
📝 풀이
function solutionC(participant, completion) {
let arr = [];
participant.forEach((a) => {
arr[a] = arr[a] ? arr[a] + 1 : 1;
});
completion.forEach((b) => {
arr[b] = arr[b] - 1
});
for (let key in arr) {
if (arr[key] >=1 ) return key;
}
}
forEach() 와 for..in 문을 써서 풀이를 할 수 있다.
1️⃣ 빈 배열을 선언하고
2️⃣ 참가자 배열을 forEach 메서드로 배열의 각 요소에 접근해서 빈 배열에 넣고 원래의 빈 배열에 참가자 배열의 요소가 없을 때 값 1을 갖는다
3️⃣ 완주자 배열을 forEach 메서드로 arr 에 완주자 배열의 요소가 있을 때 값 1을 없앤다
4️⃣ for .. in문으로 arr 배열의 key 에 접근해서 key 가 가진 value 가 1 이상인 key 만 return
Hash 문제라 map 함수를 써서 다시 풀어봐야할 문제 같다.
Author And Source
이 문제에 관하여([algorithm] - 완주하지 못한 선수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@effypark/algorithm-완주하지-못한-선수저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)