출처 - 프로그래머스 코딩테스트 고득점 KIT
participant
배열을 순회하며 참가자 이름을 key, 해당 이름을 가진 참가자 인원 수를 value 값으로 가지는 해시 테이블을 생성한다.completion
배열을 순회하며 해시 테이블에서 완주자 인원을 제외한다. function solution(participant, completion) {
let answer = "";
let pH = new Map();
for (let p of participant) {
pH.set(p, pH.get(p) + 1 || 1);
}
for (let c of completion) {
if (pH.get(c) === 1) {
pH.delete(c);
} else {
pH.set(c, pH.get(c) - 1);
}
}
for (let [key, value] of pH) {
answer = key;
}
return answer;
}
function solution(participant, completion) {
let answer = "";
let pH = {};
for (let p of participant) {
const val = pH[p] ? pH[p] + 1 : 1;
pH[p] = val;
}
for (let c of completion) {
if (pH[c] === 1) {
delete pH[c];
} else {
pH[c] = pH[c] - 1;
}
}
answer = Object.keys(pH)[0];
return answer;
}
.set
, .get
, .has
, .delete
메소드 익히기.keys
, .values
, .entries
메소드 익히기