반응형
문제
나의 풀이
function solution(id_list, report, k) {
var answer = new Array(id_list.length).fill(0);
const reportedObj = {}
report.forEach(el=>{
const arr = el.split(" ")
if(reportedObj[arr[1]]){
if(!reportedObj[arr[1]].includes(arr[0])){
reportedObj[arr[1]].push(arr[0])
}
} else{
reportedObj[arr[1]] = [arr[0]]
}
})
for( const person in reportedObj){
if(reportedObj[person].length >= k ){
reportedObj[person].forEach(el=>{
answer[id_list.indexOf(el)]++
})
}
}
return answer;
}
Array를 통해 미리 배열을 id_list의 길이만큼 선언해 주어 마지막에 index값으로 정답을 쉽게 넣어 주었다.
for in 을 이용했고, includes를 통해 중복 신고를 없애주었다.(set을 사용해도 될 것 같다)
너무 어렵게 푼 것 같다..
반응형
'코딩테스트' 카테고리의 다른 글
[백준] 11057 - 오르막수(javascript) (0) | 2022.11.16 |
---|---|
[백준] 9095 - 1, 2, 3 더하기(javascript) (0) | 2022.10.24 |
[프로그래머스] level1. 최소직사각형 (javascript) (2) | 2021.12.14 |
[프로그래머스] level3. 순위 (javascript) (0) | 2021.12.07 |
[프로그래머스] level3. 가장 먼 노드 (javascript) (0) | 2021.11.19 |