문제풀이 n, k = map(int, input().split()) m = [] num = 0 for i in range(n): m.append(int(input())) for i in range(n - 1, -1, -1): if k == 0: break if m[i] > k: continue num += k // m[i] k %= m[i] print(num) N, K = map(int,input().split()) arr = [int(input()) for _ in range(N)] cnt, idx = 0, N-1 while K > 0: if arr[idx] > K: idx -= 1 else: cnt += K//arr[idx] K %= arr[idx] print(cnt) 해설 그리디 알고리즘을 사용한다..