728x90
문제
https://school.programmers.co.kr/learn/courses/30/lessons/12982
풀이
Level 1 문제
그리디하게 생각하면 쉽게 풀 수 있을거임 !
정렬해서 신청한 금액이 적은 부서부터 지원해주면 됨
주석은 뭐... 달게 없어서 그대로 올립니당
코드
// 코딩테스트 연습 - Summer/Winter Coding(~2018) - 예산
// https://school.programmers.co.kr/learn/courses/30/lessons/12982
package PROGRAMMERS.level1;
import java.util.Arrays;
public class Num12982_예산 {
private static class Solution {
public int solution(int[] d, int budget) {
Arrays.sort(d);
int count = 0;
for (int i = 0; i < d.length; i++) {
if (budget - d[i] < 0) {
break;
}
budget -= d[i];
count++;
}
return count;
}
public static void main(String[] args) {
Solution sol = new Solution();
System.out.println(sol.solution(new int[]{1, 3, 2, 5, 4}, 9));
System.out.println(sol.solution(new int[]{2, 2, 3, 3}, 10));
}
}
}
728x90