지나가던 개발자
[Python] 백준 11047번(동전 0) 문제 풀이 본문
n, k = map(int, input().split())
coins = [int(input()) for x in range(n)]
ans = 0
for i in list(reversed(coins)):
if k < i:
continue
coin = 1
while True:
if k-(i*coin) < i:
k -= i*coin
break
coin += 1
ans += coin
print(ans)
간단한 그리디 알고리즘(탐욕법) 문제이다.
'PS > Python' 카테고리의 다른 글
[Python] 코드업 5078번(삼각형의 형태) 문제 풀이 (0) | 2023.08.02 |
---|---|
[Python] 백준 2456번(나는 학급회장이다) 문제 풀이 (0) | 2023.07.13 |
[Python] 백준 5585번(거스름돈) 문제 풀이 (0) | 2023.02.25 |
[Python] 백준 17219번(비밀번호 찾기) 문제 풀이 (0) | 2023.01.10 |
[Python] NYPC 2022 Round 1 인류의 적 모기 퇴치 문제 풀이 (0) | 2023.01.04 |
Comments