国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

hdu 1024 Max Sum Plus Plus(最大M子段和)

2019-11-06 06:35:53
字體:
供稿:網(wǎng)友

dp一直就不大會,練練dp 參考題解:http://www.cnblogs.com/kuangbin/archive/2011/08/04/2127085.html http://www.cnblogs.com/dongsheng/archive/2013/05/28/3104629.html 我的理解在注釋里面

//dp[i][j] = max(dp[i][j-1],max(dp[i-1][0]~dp[i-1][j-1]))+num[i]//dp[i][j]表示前j個數(shù)字(包含第j個)分成i段的最大值//dp[i][j]只和dp[i][j-1]和dp[i-1][0~j-1]有關(guān),用滾動數(shù)組就可以//max(dp[i-1][0]~dp[i][j-1])在計(jì)算的時候就可以順便求出來#include <cstdio>#include <cstring>#include <algorithm>const int INF = 99999999;const int MAXN = 1000010;int num[MAXN],dp[MAXN],PRe[MAXN];int main(){ int m,n,temp; while(scanf("%d %d",&m,&n) != EOF) { for(int i = 1; i <= n; ++i) scanf("%d",&num[i]); memset(dp,0,sizeof(dp)); memset(pre,0,sizeof(pre)); for(int i = 1; i <= m; ++i) { temp = -INF; //dp[i][j],當(dāng)j=i-1時,i-1個元素分成i段顯然是不行的,所以j=i for(int j = i; j <= n; ++j) { dp[j] = std::max(dp[j-1], pre[j-1]) + num[j]; //temp是j-1(包括第j-1個)之前的最大值 pre[j-1] = temp; temp = std::max(temp,dp[j]); } } printf("%d/n",temp); } return 0;}
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 胶南市| 平凉市| 金沙县| 乌鲁木齐市| 天门市| 莱西市| 衡阳市| 乐清市| 肥城市| 昌黎县| 淳安县| 常州市| 盱眙县| 南安市| 张家口市| 金乡县| 广灵县| 维西| 玛曲县| 龙海市| 永德县| 淳安县| 竹山县| 多伦县| 神木县| 南安市| 德格县| 固镇县| 喀喇| 北川| 灌云县| 台北县| 平利县| 彭州市| 黑河市| 高碑店市| 吴川市| 商洛市| 抚州市| 普格县| 紫云|