hdu 1024 Max Sum Plus Plus

Posted 啦啦啦天啦噜

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hdu 1024 Max Sum Plus Plus相关的知识,希望对你有一定的参考价值。

思考:(这道题是抄kuangbin聚聚的),这个题给了2种状态,一个是段数,一个是数值,我感觉关于dp来说,最难定义的就是状态(可能我还没有入门)感觉定义了好的状态,在推到状态转移方程的时候才会更容易推出(虎爷说过一般题目上说到几个状态就把dp数组定义为几维),对于一道dp题应该先相处以个可行的方案,然后才考虑是否进行降维,在思考怎么进行优化,而不是直接就思考在复杂度允许之内的东西

下面是ac代码:

#include <bits/stdc++.h>
using namespace std;
const int maxn=1e6+7;

int a[maxn];
int dp[maxn],mk[maxn];

int main()
{
    int m,n;
    while(~scanf("%d%d",&m,&n)){
        for(int i=1;i<=n;i++){
            scanf("%d",&a[i]);
        }
        memset(dp,0,sizeof(dp));
        memset(mk,0,sizeof(mk));
        dp[0]=mk[0]=0;
        int maxe;
        for(int i=1;i<=m;i++){
            maxe=-0x3f3f3f3f;
            for(int j=i;j<=n;j++){
                dp[j]=max(dp[j-1],mk[j-1])+a[j];
                mk[j-1]=maxe;
                maxe=max(maxe,dp[j]);
            }
        }
        printf("%d\n",maxe);
    }
    return 0;
}

 

以上是关于hdu 1024 Max Sum Plus Plus的主要内容,如果未能解决你的问题,请参考以下文章

Max Sum Plus Plus HDU - 1024

HDU 1024:Max Sum Plus Plus(DP)

hdu1024 Max Sum Plus Plus

hdu-1024 Max Sum Plus Plus

[2016-03-28][HDU][1024][Max Sum Plus Plus]

hdu1024 Max Sum Plus Plus