[伯俊]11047号:硬貨0


📝 質問する
銀色の問題を解くのはタイムアウトの時に全然解決できないので逃げる問題です😭
Gredyアルゴリズムで解く
コインで昇順に並ぶ点.
コインの価格を格納する配列を逆順に参照し、
k-硬貨の価格>0の瞬間に、その硬貨の価格をkから減算し、硬貨の数を算出する.
📌 コード#コード#
package Baekjoon;

import java.io.*;
import java.util.*;


public class BOJ11047 {
    public static void main(String[] args) throws IOException{
        // 큰 동전부터 탐색하면서 n > 동전의 가격일 때 카운트
        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[] tokens = new int[n];

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

        int cur = k;
        int answer = 0;

        while(cur > 0){
            for(int i = n-1; i >= 0; i--){
                if(cur - tokens[i] < 0) continue;
                cur -= tokens[i];
                answer++;
                break;
            }
        }
        System.out.println(answer);
    }
}