백준 1149 RGB거리
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#define _CRT_SECURE_NO_WARNINGS
#include <cstdio>
#include <algorithm>
using namespace std;
 
int main() {
    int n, a[1001][3];
    int d[1001][3];
    scanf("%d"&n);
    for (int i = 1; i <= n; i++) {
        for (int j = 0; j < 3; j++) {
            scanf("%d"&a[i][j]);
        }
    }
    a[0][0= a[0][1= a[0][2= d[0][0= d[0][1= d[0][2= 0;
    for (int i = 1; i <= n; i++) {
        d[i][0= min(d[i - 1][1], d[i - 1][2]) + a[i][0];
        d[i][1= min(d[i - 1][0], d[i - 1][2]) + a[i][1];
        d[i][2= min(d[i - 1][0], d[i - 1][1]) + a[i][2];
    }
    printf("%d\n", min(d[n][0], min(d[n][1], d[n][2])));
    return 0;
}
cs




한 달만에 풀어보는 DP 문제.

DP 개념을 다 까먹었다는 게 실감이 난다.


이 쉬운걸 이렇게 오려걸래 풀다니..





'Algorithm' 카테고리의 다른 글

백준 1010 다리 놓기  (0) 2018.05.18
백준 1003 피보나치 함수  (0) 2018.05.18
백준 1389 케빈 베이컨의 6단계 법칙  (0) 2018.05.17
백준 11403 경로 찾기  (0) 2018.05.17
백준 11404 플로이드  (0) 2018.05.17
더보기

댓글,

jayharvey

머신러닝/딥러닝 관련 글을 포스팅할 예정입니다 :)