[JS/백준]{그리디}(2217) 로프
2022년 09월 29일
백준 문제 링크
문제 설명
처음에 이문제를 풀때 조합을 이용해서 모든 경우의수를 다 구했더니 메모리초과가 나왔다. 그래서
처음에는 모든로프의 허용무게를 구하고 작은값부터 하나씩 제거하면서 허용무게를 구했더니
통과했다.
코드
let [n, ...inputData] = require("fs")
.readFileSync("./input.txt")
.toString()
.trim()
.split("\n");
inputData = inputData.map((val) => +val.trim()).sort((a, b) => b - a);
let maxWeight = -1;
while (inputData.length) {
const okWeight = inputData.at(-1) * inputData.length;
if (maxWeight < okWeight) {
maxWeight = okWeight;
}
inputData.pop();
}
console.log(maxWeight);