728x90
반응형
문제 해결 과정:
결국 최대로 많은 부서의 지원하는 result는 배열에서 제일 작은값들을 빼나가는 것과 같다 -> arr.sort()
budget에서 d[i] 만큼 빼나가며 d[i+1] 과 비교해주면서 count를 증가시켜 return 해주자.
function solution(d, budget) {
var answer = 0;
d.sort((a,b)=>a-b);
console.log(d);
let temp =0;
let count=0;
for(let i=0; d[i]<=budget-temp; i++){
temp += d[i];
count++;
}
return count;
}
!!!! d.sort() 는 [20, 10, 1, 2] 이런 배열이 있다고 하면 [1, 10, 2, 20] 으로 정렬이된다. 내장 sort가 앞자리순으로 sort하는 것 같다. 따라서 d.sort((a,b)=>a-b); 로 정렬해주어야 원하는대로 정렬이 된다.
728x90
반응형