[프로그래머스] 예산

Choi Seong Jin·2022년 11월 18일
0

프로그래머스

목록 보기
12/33

문제 링크 : 예산


내 풀이

public int solution(int[] d, int budget) {
        int answer = 0;
        int sum = 0;
        Arrays.sort(d);
        for(answer = 0; answer < d.length; answer++){
            sum += d[answer];
            if(sum > budget){
                break;
            }
        }
        return answer;
    }

최대한 많은 부서에 예산을 지원해줘야 하므로, 예산 사용량이 적은 부서부터 지원해주면 된다.
따라서 부서별 예산 d를 오름차순으로 정렬한다. 그 후 배열의 처음부터 값을 더한 후, 그 값이 매개변수로 전달된 budget의 값보다 크다면, 현재의 인덱스 값을 반환하는 것으로 풀이가 종료된다.

profile
백엔드 개발자 지망생입니다!

0개의 댓글