각 단계에서 1가지만 선택하는 것이 아니라 3개의 변수를 사용해모든 경우를 고려하는 방법을 생각해보세요
1149번 - RGB거리
질문자님이 써 주신 예시에서도 그렇듯 현재 단계에서 가장 적은 비용이 드는 경우가 결과적으로는 최소가 아닐 수도 있습니다.
n 단계 검토 시 n-1 단계의 합에 현 단계에서 최소가 되는 색을 선택하는 알고리즘으로 풀이하는 것은 그리디로, 이 알고리즘은 이 문제에는 적용할 수 없습니다.
댓글을 작성하려면 로그인해야 합니다.
rcns88 2년 전
안녕하세요.
풀이 알고리즘을 고민하다 문의 글을 남기게 되었습니다.
동적 계획법으로 문제를 푸는 경우,
n 단계 검토 시, n-1 단계의 합에 현 단계에서 최소가 되는 color를 선택하는
알고리즘으로 풀이하는 것으로 알고 있습니다.
다만, 아래와 같이 n+1 단계에서의 큰 변화가 있는 경우는
적용이 어렵지 않을까 하는데,
제가 어떤 것을 놓치고 있는지 궁금하여 글을 남깁니다.
집 개수 : 4
1 단계 RGB cost : 1 1 1
2 단계 RGB cost : 20 10 30
3 단계 RGB cost : 1 200 100
4 단계 RGB cost : 1 1,000 1,000
알고리즘 적용: (1 단계, G) 1 + (2 단계, R) 20 + (3 단계, B) 100 + (4 단계, R) 1 = 122
실제 달성 가능 최소 cost: (1단계, R or B) 1 + (2단계, G) 10 + (3단계, B) 100 + (4 단계, R) 1 = 112
감사합니다.