나의 풀이
import sys
n, k = map(int, sys.stdin.readline().split())
coins = set()
for _ in range(n):
coins.add(int(sys.stdin.readline().rstrip()))
count = 0
current = k
for c in sorted(coins, reverse=True):
if current == 0:
break
count += (current//(c:=int(c)))
current = current%c
print(count)
CODE REVIEW
- k원을 만드는데 필요한 동전의 최소 갯수를 구하는 문제. 몫과 나머지를 다루는 문제를 풀어봤다면 쉽게 해결할 수 있었다.
- set은 sort()메소드를 직접 사용할 수 없기에, sorted()로 감싸고, parameter로 reverse=True를 넣어주면 쉽게 해결 가능하다.