[프로그래머스] 코딩테스트 연습 - 22
level 1 - 신고 결과 받기
이용자의 ID가 담긴 문자열 배열 id_list, 각 이용자가 신고한 이용자의 ID 정보가 담긴 문자열 배열 report, 정지 기준이 되는 신고 횟수 k가 매개변수로 주어질 때, 각 유저별로 처리 결과 메일을 받은 횟수를 배열에 담아 return 하도록 solution 함수를 완성해주세요.
입출력 예시
id_list : ["con", "ryan"]
report : ["ryan con", "ryan con", "ryan con", "ryan con"]
k : 3
-> [0,0]
function solution(id_list, report, k) {
var answer = new Array(id_list.length).fill(0);
var count = new Array(id_list.length).fill(0);
var stops = new Array(id_list.length).fill(false);
var ids = new Array(id_list.length);
for (var i=0; i<ids.length; i++) {
ids[i] = new Array();
}
report = [...new Set(report)]
report.forEach((r) => {
var [id, stop_id] = r.split(" ");
stops[id_list.indexOf(stop_id)] = ++count[id_list.indexOf(stop_id)] >= k ? true : false;
ids[id_list.indexOf(id)].push(id_list.indexOf(stop_id))
})
stops.forEach((s, idx) => {
if (s) {
ids.forEach((i, id_idx) => {
if (i.includes(idx)) {
answer[id_idx]++;
}
})
}
})
return answer;
}
엄... 굉장히 신기하고 어렵게 풀었다
🧐
Author And Source
이 문제에 관하여([프로그래머스] 코딩테스트 연습 - 22), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@krkorklo58/프로그래머스-코딩테스트-연습-22저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)