d 배열에 있는 신청한 금액이 작은 것부터 budget과 같거나 작을때까지 더해서 더한 횟수를 리턴하면 된다고 생각했다.
function solution(d, budget) {
const dSort = d.sort((a, b) => a - b); // 금액이 작은 것부터 더하기 위해서 먼저 정렬
let answer = 0, sum = 0;
for (const i in dSort) {
// 반대로 budget에서 금액을 하나씩 빼줘도 됨
// budget -= dSort[i];
// if (budget < 0) break;
sum += dSort[i]
if (sum > budget) break
answer++;
}
return answer;
}
처음에 for문 안에 있는 if문을 맨 마지막에 둬서 답이 +1 되어서 나왔는데 answer++ 하기 전에 반복문을 끝내야 답이 +1되지 않는 것이였다.
왜 이걸 헷갈린거지 ㅠㅠ