티스토리 뷰

반응형

 

 

백준 문제 보기

출처 - 백준 공식 홈페이지

 

📌 문제 결과를 확인하자.

문제 결과

 


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

/*
        문제 :
        준규가 가진 동전 n종류
        적절히 사용해 합이 K인 동전 만들 때 동전 개수 최솟값 구하기

        입력 :
        n k
        n개의 줄게 동전 가치 오름차순으로 주어짐.

        test 케이스 :
        10 4200
        1
        5
        10
        50
        100
        500
        1000
        5000
        10000
        50000
         */
public class Q11047 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());

        int n = Integer.parseInt(st.nextToken());
        int k = Integer.parseInt(st.nextToken());

        int money[] = new int[n];
        for(int i=0; i<n; i++) {
            money[i] = Integer.parseInt(br.readLine());
        }

        int count = 0;
        for(int i=n-1; i>=0; i--) {
            if(k/money[i] > 0) {
                count += k/money[i];
                k = k%money[i];
            }else {
                continue;
            }
         }
        System.out.println(count);
    }
}

 

동전 문제이기 때문에

처음에 동전을 입력받아 배열에 넣고

i는 n-1부터(큰 동전부터) 반복문을 돌며

합계/동전의 값을 count변수에 더해주어 출력시켰다.

 

 

 

반응형