728x90
- N가지 종류의 화폐
- 화폐들의 개수를 최소한으로 이용해서 가치의 합이 M원이 되도록 함
=> 경우의 수 출력
n, m = map(int, input().split())
data = []
for i in range(n):
data.append(int(input()))
d = [10001] * (m+1)
d[0] = 0
for i in range(n):
for j in range(data[i], m+1):
if d[j-data[i]] != 10001:
d[j] = min(d[j], d[j-data[i]]+1)
if d[m] == 10001:
print(-1)
else:
print(d[m])
반응형
'전.py' 카테고리의 다른 글
[python] 프로그래머스 개인정보 수집 유효기간 (2) | 2023.01.11 |
---|---|
[python] 프로그래머스 성격 유형 검사하기 (0) | 2023.01.11 |
[python] 바닥 공사 (0) | 2022.07.21 |
[python] 개미 전사 (0) | 2022.07.21 |
[python] 1로 만들기 (0) | 2022.07.21 |