선물값과 배송비 더한 값을 빼고 음수가 나오면
그 인덱스 값을 다시 더하고 남은 선물값과 배송값에서
차례대로 선물값을 2로 나누어 가능한 값을 찾았습니다
<script>
function solution(m, product){
let num = 0;
let num1 = 0;
product.sort((a,b)=>(a[0]+a[1])-(b[0]+b[1]));
for(let i = 0; i < product.length; i++){
if(m > 0){
m -= (product[i][0]+product[i][1]);
num++;
if(m < 0){
num--;
num1 = i;
m += (product[num1][0]+product[num1][1])
}
}
}
console.log(m)
for(let i = num; i < product.length; i++){
if(m>=((product[i][0]/2)+product[i][1])){
m-=((product[i][0]/2)+product[i][1])
num++;
}
}
return num;
}
let arr=[[6, 6], [2, 2], [4, 3], [4, 5], [10, 3]];
console.log(solution(28, arr));
</script>