코테/프로그래머스
프로그래머스 예산
65살까지 코딩
2022. 1. 16. 22:56
728x90
반응형
import java.util.ArrayList;
import java.util.Collections;
class Solution {
public int solution(int[] d, int budget) {
int answer = 0;
ArrayList<Integer> arrayList = new ArrayList<>();
//습관 2차원배열이 아닌 이상 배열은 ArrayList로 바꿔 푸는게 편해서 바꿈
for (int i : d) {
arrayList.add(i);
}
// 정렬
Collections.sort(arrayList);
int count = 0;
while(count != d.length){
//예산에서 부서별 신청금액을 작은 것 부터 차례대로 뺌
// 작은 것 부터 뺴야 살 수 있는 부서가 최대가 될 수 있기 때문
budget = budget - arrayList.get(count);
//예산이 0보다 작아진다면 못사는 것이므로 count를 +1 하지않고BYE
if(budget < 0){
break;
//아직 예산이 남아있다면 count를 더하기
}else{
count++;
}
}
return count;
}
}
출처: https://programmers.co.kr/learn/courses/30/lessons/12982
코딩테스트 연습 - 예산
S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는
programmers.co.kr
728x90
반응형