#include <bits/stdc++.h>
using namespace std;
int solution(vector<int> d, int budget)
{
vector<int> arr(d);
sort(arr.begin(), arr.end());
int answer = 0;
int sum = 0;
for (int i = 0; i < d.size(); i++)
{
sum += arr[i];
}
vector<int>::iterator iter;
while (sum > budget)
{
iter = max_element(arr.begin(), arr.end());
arr.erase(iter);
sum -= *iter;
}
answer = arr.size();
cout << answer << endl;
return answer;
}
일단 오름차순으로 정렬 후 ,
budget
보다 크면 맨 뒤에부터 차례대로 빼면서 벡터를 삭제시킨다.
최종으로 남은 벡터의 요소 수가 예산을 할당 받을 수 있는 팀원 수.