Skip to content

Commit 4fe4991

Browse files
Merge pull request #2060 from CodingTestStudy2/정진영
[정진영] Day20
2 parents 33635ed + a261de1 commit 4fe4991

1 file changed

Lines changed: 27 additions & 0 deletions

File tree

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
/**
2+
* @param {number[][]} tasks
3+
* @return {number}
4+
*/
5+
6+
// 시작 조건: 실제 소모량보다 까다로운 작업 먼저 처리위해 // minimum - actual 이 큰 순서대로 청렬
7+
// 각 작업 시작 시 필요한 초기에너지 계산
8+
// 그리디 + 정렬
9+
// 시간복잡도: O(n log n)
10+
var minimumEffort = function(tasks) {
11+
tasks.sort((a, b) => {
12+
return (b[1] - b[0]) - (a[1] - a[0]);
13+
});
14+
15+
let spent = 0;
16+
let answer = 0;
17+
18+
for (let i = 0; i < tasks.length; i++) {
19+
const actual = tasks[i][0];
20+
const minimum = tasks[i][1];
21+
22+
answer = Math.max(answer, spent + minimum);
23+
spent += actual;
24+
}
25+
26+
return answer;
27+
};

0 commit comments

Comments
 (0)