베스트앨범
2020.07.31
const solution = (genres, plays) => {
return genres
.reduce((acc, current, idx, origin) => {
if (!acc.hasOwnProperty(current)) {
acc[current] = { sum: plays[idx], list: [[idx, plays[idx]]] };
} else {
acc[current].sum += plays[idx];
acc[current].list.push([idx, plays[idx]]);
}
if (idx == origin.length - 1) {
for (const key in acc) {
acc[key].list.sort((a, b) => b[1] - a[1]);
}
return Object.values(acc).sort((a, b) => b.sum - a.sum);
}
return acc;
}, {})
.reduce((acc, { sum, list }) => {
acc.push(...list.slice(0, 2).map(([idx, time]) => idx));
return acc;
}, []);
};