250x250
반응형
Notice
Recent Posts
Recent Comments
Link
N
(Leet Code JS)Maximum Units on a Truck 본문
728x90
반응형
https://leetcode.com/problems/maximum-units-on-a-truck/
정렬을 활용한 문제.
주어진 boxTypes 배열을 정렬하는데,
boxTypes[1] 번째 요소의 내림차순으로 정렬을 해준다.
이후 for문을 이용해 truckSize가 채워지는 만큼 박스를 트럭에 채운다.
만약 truckSize - num이 0 이상이라면 모든 박스를 트럭에 올릴 수 있다.
truckSize를 num 개 줄이고, answer에는 boxTypes[i][0] * boxTypes[i][1]을 더해준다.
그렇지 않고 truckSize - num 이 음수라면 모든 박스를 올릴 수 없다는 뜻이 된다.
올릴 수 있는 최대 박스 수는 현재까지의 truckSize가 된다.
그렇기 때문에 answer에는 남은 truckSize * boxTypes[i][1]을 더해주고, for문을 빠져 나가거나 리턴하면 된다.
var maximumUnits = function(boxTypes, truckSize) {
let answer = 0;
boxTypes.sort((a, b) => b[1] - a[1]);
for(let i = 0; i < boxTypes.length; i++){
const [num, units] = boxTypes[i];
const diff = truckSize - num;
if(diff >= 0){
truckSize -= num;
answer += (num * units);
} else if(diff < 0){
answer += (truckSize * units);
break;
}
}
return answer;
};
728x90
반응형
'Leet Code 알고리즘' 카테고리의 다른 글
(Leet Code JS)Candy (0) | 2022.07.10 |
---|---|
(Leet Code JS)Wiggle Subsequence (0) | 2022.07.09 |
(Leet Code JS)Furthest Building You Can Reach (0) | 2022.07.03 |
(Leet Code JS)Non-decreasing Array (0) | 2022.06.28 |
(Leet Code JS)Delete Operation for Two Strings (0) | 2022.06.23 |