👉 문제 설명
- 문제를 요약을 하자면, 정해진 예산에 대해서 최대한 많은 부서의 물품을 구매하는 문제이다.
👉 javascript 문제 풀이
function solution(d, budget) { var count = 0; var sum = 0; d.sort(function(a, b) { return a - b; }); for(var i=0; i < d.length; i++) { count++; sum += d[i]; if(sum > budget) { count--; break; } } return count; }
- 먼저 정렬함수임 sort를 사용해 오름차순으로 d 배열을 정렬해준뒤
d.length 만큼 포문을 돌려 sum 변수에 더해주었다
그런 뒤 if 문을 통해 예산이 넘으면 break를 사용해 포문을 끝내는 방식으로 하였는데,
처음에 count를 먼저 더해주는것이 아닌 if문을 위로 올려서 코드를 작성했으면 더 깔금했을거같다.