LightOJ 1047 - Neighbor House(dp)

来源:互联网 发布:淘宝定金尾款凑单 编辑:程序博客网 时间:2024/05/18 07:31

题目链接:LightOJ 1047 - Neighbor House

代码

#include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int maxn = 30;const int inf = 0x3f3f3f3f;int N, dp[maxn][3];int main () {    int cas;    scanf("%d", &cas);    for (int kcas = 1; kcas <= cas; kcas++) {        scanf("%d", &N);        for (int i = 1; i <= N; i++) {            for (int j = 0; j < 3; j++)                scanf("%d", &dp[i][j]);        }        for (int i = 2; i <= N; i++) {            for (int j = 0; j < 3; j++) {                int s = inf;                for (int k = 0; k < 3; k++) if (j != k)                    s = min(s, dp[i-1][k]);                dp[i][j] += s;            }        }        int ans = inf;        for (int i = 0; i < 3; i++)            ans = min (ans, dp[N][i]);        printf("Case %d: %d\n", kcas, ans);    }    return 0;}
0 0
原创粉丝点击