input: 부서별로 요청한 예산의 배열, 총예산
output: 총예산을 초과하지 않는 범위에서 구매 가능한 최대 부서의 수 반환
#include <vector>
#include <algorithm>
using namespace std;
int solution(vector<int> d, int budget) {
int answer = 0, count = 0;
sort(d.begin(), d.end());
for (int n : d) {
if ((answer + n) <= budget) {
answer += n;
count++;
} else {
break;
}
}
return count;
}
int main() {
assert(solution({1, 3, 2, 5, 4}, 9) == 3);
assert(solution({2, 2, 3, 3}, 10) == 4);
}