Engineering Note

[Programmers] 예산 본문

Problem Solving/Programmers

[Programmers] 예산

Software Engineer Kim 2022. 7. 14. 19:56

Link : https://school.programmers.co.kr/learn/courses/30/lessons/12982?language=java

Note

문제를 해석해보면 각 부서별로 물품 구매를 위해 필요한 금액이 있고, 회사는 전체 예산내에서 각 부서를 지원해줄 수 있다. 이때 최대 몇 개의 부서를 지원할 수 있는지 return 하는 문제이다. 단, 부서별 지원금액은 신청한 금액만큼을 모두 지원해주어야 한다.

나는 평소에 문제를 문자보다 시각적으로 변환해서 이해하는 것을 좋아하여 시각적으로 문제를 표현해 보았다.그리고 다음과 같은 문제와 같음을 이해할 수 있었다.

budget 크기의 통에 크기가 부서별 신청 금액에 비례하는 상자를 집어 넣을 때 가장 많은 상자를 넣는 방법은?으로 해석할 수 있다.

이렇게 되면 문제를 풀이할 방법이 더 명확해진다. 가장 작은 크기의 상자부터 채울 수록 넣을 수 있는 상자수가 많아 진다.

가장 작은 값부터 차례로 넣기위해 문제에 주어진 부서별 예산값을 정렬하고 0인덱스부터 순차적으로 budget보다 작으면 budget의 값을 줄이면서 문제를 해결할 수 있다.

Code

```
import java.util.Scanner;

public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);

    int nums[] = new int[5];

    for(int i = 0; i < 5; ++i){
        System.out.println(nums[i]);
    }



}

}

``

'Problem Solving > Programmers' 카테고리의 다른 글

[Programmers] 전력망 둘로 나누기  (0) 2022.04.27
[Programmers] 가장 먼 노드  (0) 2022.03.21
[Programmers] 큰 수 만들기  (0) 2022.02.23
[Programmers] 기능개발  (0) 2022.02.22
[Programmers] 점프와 순간 이동  (0) 2022.02.02
Comments