[알고리즘] 신고 결과 받기

김재경·2022년 3월 12일
0
function solution(id_list, reportList, k) {
  let reports = [...new Set(reportList)].map((a) => {
    return a.split(" ");
  });

  const bad = {};
  for (let report of reports) {
    bad[report[1]] = bad[report[1]] + 1 || 1;
  }

  const good = {};
  for (let report of reports) {
    if (bad[report[1]] >= k) {
      good[report[0]] = good[report[0]] + 1 || 1;
    }
  }

  const res = id_list.map((id) => good[id] || 0);

  return res;
}

javascript 로 알고리즘 풀 생각은 못했었는데, 종종 풀어봐야겠다

배운 점

  • || 사용한 문법이 신박했음 Object에서 key 값이 없으면 오류가 났는데, || 덕분에 첫 값을 1로 시작할 수 있었음
  • new Set을 사용해서 중복 제거 하는 방법도 알았음
profile
프런트앤드 개발자

0개의 댓글