レポート結果の取得-javascript
質問(ソース)
👉 https://programmers.co.kr/learn/courses/30/lessons/92334
私の接近
コットの4番目の問題の大きな難関に出会って、震えていたが、似たようなことを書いた.
1人のプレイヤーを複数回通報することができますが、同じプレイヤーに対する通報回数は1回に処理されます.レポート配列をsetに設定して重複除外
レポートをsplit関数に分けて単独で保存する考え方
ずっと悩んで、答えを探して、それを私のものにしようと思っていましたが、これさえ理解しにくいです!
一歩一歩积み重ねてこの文章を読んだ时はとても简単な问题だったのか、やれる日が来るのを楽しみにしていてそのまま过ごした~
に答える
function solution(id_list, report, k) {
let reportObj = new Map();
id_list.forEach((val) => {
return (reportObj[val] = {
report: [],
reported: 0,
isStoppedId: false,
});
});
report.forEach((val) => {
let [reportPerson, reportedPerson] = val.split(' ');
if (reportObj[reportPerson].report.indexOf(reportedPerson) === -1) {
reportObj[reportPerson].report.push(reportedPerson);
reportObj[reportedPerson].reported++
if (reportObj[reportedPerson].reported >= k) {
reportObj[reportedPerson].isStoppedId = true;
}
}
});
let sendMail = id_list.map((val) => {
return reportObj[val].report.filter((reportId) => reportObj[reportId].isStoppedId).length;
});
return sendMail;
}
今日の勉強と教訓
今はまだ気まずいですが、後でcoteを準備するときもわざと使ってみましょう.これからは仲良くしてね.
Reference
この問題について(レポート結果の取得-javascript), 我々は、より多くの情報をここで見つけました https://velog.io/@donq/신고-결과-받기-javascriptテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol