[백준] 2449번 - 전구
KOI 2011 초등부 문제.
동적 계획법을 이용하여 풀 수 있다.
2차원 dp배열을 사용한다. dp[start][end]는 start~end 구간의 전구 불빛을 같게 만들 때 필요한 최소 색바꿈 횟수이다.
i가 start와 end 사이 인덱스일 때, dp[start][end]는 min(dp[start][end], dp[start][i] + dp[i+1][start] + diff)로 나타낼 수 있다. 여기서 diff는 왼쪽, 오른쪽 구역이 다른 색상인지에 따라 달라진다. 만약 start~i 부분이 색상 1이고, i+1~end가 2라면 둘을 합칠 때 둘 중 하나의 색상으로 통일해야 하므로 diff는 1이 된다.
1 |
|