알고리즘

[프로그래머스] 예산

건뱅 2019. 5. 5.
반응형

<문제> (문제를 잘 읽으세요)

 

<작성코드>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
 
public class Solution9 {
    public static void main(String[] args) {
        int[] d = { 13254 };
        int bdg = 9;
        System.out.println(solution(d, bdg));
    }
 
    public static int solution(int[] d, int budget) {
        int answer = d.length;
        int cnt = 0;
        int k = budget;
        Arrays.sort(d); // 1,2,3,4,5 로 정렬!
 
        for (int i = 0; i < d.length; i++) {
            k -= d[i];
 
            if (k >= 0) {
                cnt++;
            } else if (k < 0) {
                answer = cnt;
                break;
            }
        }
 
        return answer;
    }
}
 
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4f; text-decoration:none">Colored by Color Scripter
 

 

<실행결과>

 

국어를 못해서 오래걸린 문제였다..

처음에 예산에 맞아떨어지는 최대값을 구하는 줄 알고 머리가 아팠는데, 다시 읽어보니 예산 안에서 가장 많은 부서를 지원해줄 수 있는 경우를 구하는 문제였다.

반응형

댓글