Keep Going

빠르지 않아도 꾸준히

백준/Silver

[실버 4] [Java] 백준 11047번: 동전 0

금동진 2025. 9. 2. 09:44

아이디어

동전이 여러개가 주어지니, 가장 큰 동전을 쓸 수 있는 만큼 쓰고

계속해서 동전의 크기를 줄여나간다.

 

이를 코드로 구현하면 다음과 같다.

import java.io.*;

public class N11047 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        String[] input = br.readLine().split(" ");
        int N = Integer.parseInt(input[0]);
        int K = Integer.parseInt(input[1]);
        int[] coins =  new int[N];
        int index = N - 1;
        int count = 0;

        for (int i = 0; i < N; i++) {
            coins[i] = Integer.parseInt(br.readLine());
        }

        while (K != 0) {
            if (K < coins[index]) {
                index--;
                continue;
            }
            K -= coins[index];
            count++;
        }

        bw.write(String.valueOf(count));
        bw.flush();
        br.close();
    }
}

 


아직 초보라 많이 서툴고 틀린 부분이 있을 수 있습니다. 고수분들께서 조언해주실만한 사항이 있으면 감사히 받겠습니다.