728x90
반응형
문제
코드
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;
int solution(vector<int> d, int budget) {
int answer = 0;
sort(d.begin(), d.end());
for (const int i : d)
{
if (budget < i)
{
break;
}
budget -= i;
answer++;
}
return answer;
}
문제 해설
- 최대한 많은 부서가 구매할 수 있도록 신청한 금액이 제일 적은 것이 먼저 오도록 sort 함수로 정렬해준다.
- 그 후 foreach 로 예산을 금액만큼 차감한다. 그리고 횟수를 더한다.
- 만약 남은 예산보다 i 가 클경우 중단한다.
728x90
반응형
'코딩테스트 > 프로그래머스(C++)_Level.1' 카테고리의 다른 글
[프로그래머스/C++] Lv.1 크기가 작은 부분문자열 (0) | 2023.12.12 |
---|---|
[프로그래머스/C++] Lv.1 이상한 문자 만들기 (0) | 2023.11.28 |
[프로그래머스/C++] Lv.1 3진법 뒤집기 (0) | 2023.11.28 |
[프로그래머스/C++] Lv.1 같은 숫자는 싫어 (0) | 2023.11.28 |
[프로그래머스/C++] Lv.1 최대공약수와 최소공배수 (0) | 2023.11.28 |