[백준 1149번/c++] RGB거리
알고리즘 다이나믹 프로그래밍 풀이 h 2차원 벡터를 두어 똑같은 색이 이웃하지 않도록 h[i-1]의 값 중 최소 값을 이용하여 값을 누적해간다. 즉, h[i][1]은 i번째 집을 빨간색으로 칠할 때의 최소 비용, h[i][2]은 i번째 집을 초록색으로 칠할 때의 최소 비용, h[i][1]은 i번째 집을 파란색으로 칠할 때의 최소 비용이 된다. 그러면 h[n][1], h[n][2], h[n][3] 중 최소값이 답이 된다. 성공 코드 #include using namespace std; int main() { // freopen("input.txt", "rt", stdin); ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n, r,..
알고리즘
2022. 8. 10. 16:13