Hanbit the Developer
[그리디] Python - 11047번, 동전 0 본문
import sys
input = sys.stdin.readline
N, K = map(int, input().split())
coins = []
for _ in range(N):
coins.append(int(input()))
RET = 0
curMoney = K
while curMoney > 0:
curMaxCoin = coins.pop()
RET += curMoney // curMaxCoin
curMoney = curMoney % curMaxCoin
print(RET)
최댓값을 꺼내서 RET, curMoney에 각각 연산해준다. 여기서 RET의 연산은 curMoney보다 curMaxCoin이 크면 0을 반환할 것이고, curMoney는 그대로일 것이다. 따라서 curMaxCoin이 curMoney 이하인지 검사하는 것은 생략해도 된다.
'Algorithm > 백준' 카테고리의 다른 글
[그래프] Python - 7562번, 나이트의 이동 (0) | 2021.03.18 |
---|---|
[DP] Python - 110066번, 파일 합치기 (0) | 2021.03.17 |
[문자열] Python - 1427번, 소트인사이드 (0) | 2021.03.11 |
[그래프] Python - 2468번, 안전 영역 (0) | 2021.03.11 |
[DP] Python - 1516번, 게임 개발 (0) | 2021.03.11 |