杭电 HDU 2084 数塔
来源:互联网 发布:linux piwik安装详解 编辑:程序博客网 时间:2024/04/25 17:58
http://acm.hdu.edu.cn/showproblem.php?pid=2084
第一次用动规,还是没理解那个状态转移方程怎么写,感觉就是用递归,但是书上说因为递归速度太慢所以用动规。。。
这个题一开始按照书上动规的思路在想状态转移,就是要求最后一个的最大值就要知道前面一个数的最大值。。想了半天没想明白,后来同学给我说不要那样跟着题目思路从
顶层往下走,那样好麻烦的,叫我直接从数塔的最下面开始网上走,就是从最底层网上一层一层求出最大值,最后相加即是结果。。。
好吧,反过来想着也能看成状态转移,只是我们是先已经求出前面的最大值状态,最后直接求结果。。如图所示。。
AC代码:
#include<iostream>#include<cstdio>using namespace std;int main(){ int a[101][101],i,j,t,n; int sum,max; scanf("%d",&t); while(t--) { scanf("%d",&n); for(i = 0; i < n; i++) { for(j = 0; j <= i; j++) { scanf("%d",&a[i][j]); } } sum = a[0][0]; for(i = n-2; i >= 0; i--) //从最下面一层开始求和并把最大值存到当前位置 { for(j = 0; j <= i; j++) { sum = a[i][j] + a[i+1][j]; max = sum; sum = a[i][j] + a[i+1][j+1]; if(sum > max) { max = sum; } a[i][j] = max; // printf("i:%d j:%d %d\n",i,j,a[i][j]); } } // printf("\n"); printf("%d\n",a[0][0]); } return 0;}
- 杭电 HDU 2084 数塔
- 杭电(hdu)ACM 2084 数塔
- 杭电2084数塔
- 杭电 2084 数塔
- 杭电2084 数塔
- 杭电 2084 数塔
- 杭电2084数塔
- 【杭电】[2084]数塔
- 杭电-2084 数塔
- 杭电 数塔
- 杭电 HDU 2072 单词数
- 杭电 HDU ACM 1406 完数
- 杭电(hdu)2097 Sky数
- 回文数猜想 HDU杭电1282
- 杭电2084 数塔 DP
- 杭电 2084 数塔 (DP)
- 数塔(杭电2084)
- 杭电 Problem 2084 数塔
- IIS错误:错误信息 401.3: 您无权使用您提供的凭据查看此目录或页
- OS界面-仿网易新闻左侧抽屉式交互 续(添加新闻内容页和评论页手势)
- 黑马程序员-集合框架
- undefined reference to "sleep"
- cocos2d动画工具:-hd.plist 生成 plist
- 杭电 HDU 2084 数塔
- 利用按钮的Tag属性触发其事件
- android 读取TXT文件
- 警告: com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@21eb3f -- APPARENT DEADLOCK!!
- 去除List中重复的数据
- 项目应用中JQUERY+CSS
- 偷个空,写个博客——各种沟通各种纠结
- 苹果平台上的媒体流播放技术HLS
- Dreamweaver下拉菜单全攻略