알고리즘
[프로그래머스/자바스크립트] 해시 - 베스트앨범
넫챠미K
2021. 11. 8. 23:57
첫번째 풀이 - 실패~~~
function solution(genres, plays) {
var answer = [];
var songs = [];
genres.map((genre, index) => {
var obj = {};
obj["index"] = index;
obj["genre"] = genre;
obj["plays"] = plays[index];
songs.push(obj);
});
songs.sort((a, b) => {
return b["plays"] - a["plays"];
});
var album = {};
var countByGenre = songs.reduce((obj, song) => {
obj[song["genre"]] = (obj[song["genre"]] || 0) + 1;
if (obj[song["genre"]] <= 2) {
album[song["genre"]] =
(album[song["genre"]] ? album[song["genre"]] + "," : "") + song.index;
}
return obj;
}, {});
var result = [];
Object.values(album).forEach((indexList) => {
for (var i = 0; i < indexList.length; i++) {
if (indexList[i] !== ",") {
result.push(parseInt(indexList[i]));
}
}
});
return result;
}