작성
·
248
0
function solution(m, product) {
let count = 0;
let sumResult = [];
for (let i = 0; i < product.length; i++) {
product[i][0] /= 2;
let sum = 0;
let priceSum = [...product].map((price) => price[0] + price[1]);
priceSum.sort((a, b) => a - b);
for (let j = 0; j < priceSum.length; j++) {
sum += priceSum[j];
count++;
if (sum > m) {
sumResult.push(j);
break;
}
}
product[i][0] *= 2;
}
return Math.max(...sumResult);
}
4-4 졸업선물 풀어보았는데요
강사님과 너무 다르게 풀어서 시간복잡도 면에서 자신이 없네요ㅜ
답변 1
0
안녕하세요^^
아래 케이스의 경우 [12, 1]을 할인받아서 답이 5가 됩니다. 반례입니다.
console.log(solution(41, [[8, 6], [2, 2], [4, 3], [4, 5], [12, 1]]));