zoukankan      html  css  js  c++  java
  • Educational Codeforces Round 17 D. Maximum path DP

    题目链接http://codeforces.com/contest/762/problem/D

    多多分析状态;这个很明了

    #include<bits/stdc++.h>
    using namespace std;
    #pragma comment(linker, "/STACK:102400000,102400000")
    #define ls i<<1
    #define rs ls | 1
    #define mid ((ll+rr)>>1)
    #define pii pair<LL,int>
    #define MP make_pair
    typedef long long LL;
    const long long INF = 1e18;
    const double Pi = acos(-1.0);
    const int N = 1e6+10, M = 2e6+10, mod = 1e9+7, inf = 2e9;
    
    void update(LL &x,const LL &y) {
        if(x < y) x = y;
    }
    LL a[3][N],dp[5][N];
    int n;
    int main() {
        scanf("%d",&n);
        for(int i = 0; i < 3; ++i)
            for(int j = 1; j <= n; ++j) scanf("%I64d",&a[i][j]);
        for(int i = 0; i < 5; ++i)
            for(int j = 0; j <= n; ++j) dp[i][j] = -INF;
        dp[0][0] = 0;
        for(int i = 1; i <= n; ++i) {
            update(dp[0][i],dp[0][i-1]+a[0][i]);
            update(dp[0][i],dp[1][i-1]+a[0][i]+a[1][i]);
            update(dp[0][i],dp[2][i-1]+a[0][i]+a[1][i]+a[2][i]);
            update(dp[0][i],dp[4][i-1]+a[0][i]+a[1][i]+a[2][i]);
    
            update(dp[1][i],dp[1][i-1]+a[1][i]);
            update(dp[1][i],dp[0][i-1]+a[0][i]+a[1][i]);
            update(dp[1][i],dp[2][i-1]+a[1][i]+a[2][i]);
    
            update(dp[2][i],dp[2][i-1]+a[2][i]);
            update(dp[2][i],dp[1][i-1]+a[2][i]+a[1][i]);
            update(dp[2][i],dp[0][i-1]+a[0][i]+a[1][i]+a[2][i]);
            update(dp[2][i],dp[3][i-1]+a[0][i]+a[1][i]+a[2][i]);
    
            update(dp[3][i],dp[0][i-1]+a[0][i]+a[1][i]+a[2][i]);
            update(dp[4][i],dp[2][i-1]+a[0][i]+a[1][i]+a[2][i]);
        }
        printf("%I64d
    ",dp[2][n]);
        return 0;
    }
  • 相关阅读:
    hdu3709(数位dp)
    2012天津E题
    2012天津C题
    hdu1754(splay)
    赤裸裸的splay平衡树
    hdu(预处理+线段树)
    uva11922(强行用rope替代spaly)
    lightoj 1370 欧拉函数
    poj3294 出现次数大于n/2 的公共子串
    poj2774 后缀数组2个字符串的最长公共子串
  • 原文地址:https://www.cnblogs.com/zxhl/p/6617780.html
Copyright © 2011-2022 走看看