[伯俊]11047号:硬貨0
7438 ワード
📝 質問する
銀色の問題を解くのはタイムアウトの時に全然解決できないので逃げる問題です😭
Gredyアルゴリズムで解く
コインで昇順に並ぶ点.
コインの価格を格納する配列を逆順に参照し、
k-硬貨の価格>0の瞬間に、その硬貨の価格をkから減算し、硬貨の数を算出する.
📌 コード#コード#
銀色の問題を解くのはタイムアウトの時に全然解決できないので逃げる問題です😭
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);
}
}
Reference
この問題について([伯俊]11047号:硬貨0), 我々は、より多くの情報をここで見つけました https://velog.io/@paulus0617/boj11047テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol