https://www.acmicpc.net/problem/11047
오름차순으로 배열에 저장 후 저장 후 역순으로 k원을 나눠 동전 갯수를 구한다
package com.example.baekjoon;
import java.io.*;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
long k = Long.parseLong(st.nextToken());
int arr[] = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = Integer.parseInt(br.readLine());
}
int cnt = 0;
for (int i = arr.length - 1; i >= 0; i--) {
if (arr[i] <= k) {
cnt += (k / arr[i]);
k %= arr[i];
}
}
sb.append(cnt);
System.out.println(cnt);
}
}