
간단한 그리디 문제였다.
먼저 정렬을 한 뒤, 가격이 낮은 것부터 처리해주는 방식으로 쉽게 해결할 수 있었다.
#include <iostream>
#include <stdio.h>
#include <string>
#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;
int solution(vector<int> d, int budget) {
int answer = 0;
int sum = 0;
sort(d.begin(), d.end());
for(int i = 0;i < d.size(); i++){
sum += d[i];
if(sum > budget){
break;
}
answer++;
}
cout << answer;
return answer;
}