문제

제한 사항

입출력 예

풀이
function solution(participant, completion) {
let answer = "";
let myMap = new Map();
for (let x of participant) {
if (myMap.has(x)) {
myMap.set(x, myMap.get(x) + 1);
} else {
myMap.set(x, 1);
}
}
for (let x of completion) {
if (myMap.has(x)) {
myMap.set(x, myMap.get(x) - 1);
if (!myMap.get(x)) {
myMap.delete(x);
}
}
}
for (let x of [...myMap.keys()]) {
answer += x + " ";
}
return answer.trim();
}
- key와 value를 다루는 Map자료구조를 이용했다.
- participant를 순회하며 Map을 만들고, completion을 순회하며 만들어진 map에서 value를 -1하거나 key값을 삭제해줬다.