-
카테고리
-
세부 분야
알고리즘 · 자료구조
-
해결 여부
해결됨
f20 에서 f15 + 1은 이해가 됩니다...
23.08.19 23:52 작성 조회수 171
0
다만, f15 에서 f10 +1 +1 / f12 +1 +1 은 이해가 되지 않습니다.
15원을 만들기 위해서는 10원을 만든 동전 개수에서 5원짜리 동전+1 만 하는게 맞지 않나요?
마찬가지로 f12도 12원을 만들기 위해서는 12원을 만든 동전개수에 3원짜리 +1만 하면 되는줄 알았지만 왜 f10 +1+1 / f12+1+1 인지 이해가 되지않습니다...
답변을 작성해보세요.
1
조이스터디
지식공유자2023.08.20
안녕하세요 푸푸님.
주어진 문제에 따르면 3원, 5원짜리 동전이 존재합니다.
따라서, 20원을 지불하기 위해서는 15원을 지불한 뒤 5원을 추가로 사용하거나, 17원을 지불한 뒤 3원을 추가 지불하는 방법이 있습니다.
fn을 n원을 지불하기 위해 사용한 동전의 총 수라고 할 때, 위 내용을 수식으로 나타내면 아래와 같습니다.
f20 = min(f15+1, f17+1) ......(1)
여기서, f15와 f17은 base case가 아니기 때문에, 같은 방식으로 표현이 가능합니다.
f15 = min(f10+1, f12+1) ......(2)
f17 = min(f12+1, f14+1) ......(3)
여기서, 2를 1에 대입하면 아래와 같은 식이 나옵니다.
f20 = min( min(f10+1, f12+1)+1, f17+1)
말씀해주신 수식
f10+1+1, f12+1+1은 위와 같은 계산 과정에서 유도된 것으로 생각됩니다.
푸푸님이 만족하시는 답변이 되었기를 바라며, 답변 해결로 상태 변경을 부탁드립니다.
이후에도 문제를 풀거나 공부하시면서 어려운 점이 있다면 질문 올려주세요.
감사합니다.
답변 1