프로그래머스 코딩테스트연습 예산

import java.util.*;
import java.util.stream.*;

class Solution {
    public int solution(int[] d, int budget) {
        List<Integer> list = 
        Arrays.stream(d).sorted().boxed().collect(Collectors.toList());
        
        int sum = 0;
        int count = 0;
        for (var num : list) {
            if((sum += num) > budget){
                break;
            }
            count++;
        }
        return count;
    }
}

Stream.boxed()는 Wrapper 클래스로 Wrap 해주는 역할이다.

이 문제는 예산을 정렬한 뒤 순서대로 대입하고 합하여 budget을 넘을 때
break를 걸어 count를 구한다.

좋은 웹페이지 즐겨찾기