const-tommy.dev
기록을 불러오는 중입니다
Set의 크기(.size)가 k 이상인 사람들만 뽑아서 정지될 '블랙리스트'를 만든다. 이 사람들에 해당되는 값을 가진 사람들한테만 메일 보내기// 풀이 코드를 작성하세요.
function solution(id_list, report, k) {
const reportObj = {};
report.forEach((value) => {
const [신고자, 피신고자] = value.split(" ");
if (!reportObj[피신고자]) {
reportObj[피신고자] = new Set();
}
reportObj[피신고자].add(신고자);
});
let 블랙리스트 = Object.entries(reportObj).filter(([key, value]) => value.size > k || value.size == k);
let 알리기 = 블랙리스트.map((([key, value]) => [...value])).flat();
console.log(알리기)
let answer = {};
알리기.forEach((value) => {
answer[value] = answer[value] ? answer[value] + 1 : 1;
})
return id_list.map((value) => answer[value] || 0);
}Object.entries, Set, flat을 연달아 사용하면서 데이터 가공하는 연습장으로 제격인듯!