残業指数
3666 ワード
function solution(n, works) {
let max = works.sort((a,b) => b-a)[0];
outer: while(n) {
if (!max) return 0;
for (let i = 0; i < works.length; i++) {
if (max === works[i]) {
works[i] -= 1;
n--;
continue outer;
}
}
max--;
}
return works.reduce((acc,e) => acc + e ** 2, 0)
}
Math.maxで最大値を探す方法は効率が低い.降順にソートし、ナビゲートして削除する方法をテストします.Reference
この問題について(残業指数), 我々は、より多くの情報をここで見つけました https://velog.io/@gytlr01/야근-지수-javascriptテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol