CODE[VS] 1220 数字三角形
来源:互联网 发布:人上人 知乎 编辑:程序博客网 时间:2024/05/17 23:53
题目描述 Description
如图所示的数字三角形,从顶部出发,在每一结点可以选择向左走或得向右走,一直走到底层,要求找出一条路径,使路径上的值最大。
输入描述 Input Description
第一行是数塔层数N(1<=N<=100)。
第二行起,按数塔图形,有一个或多个的整数,表示该层节点的值,共有N行。
输出描述 Output Description
输出最大值。
样例输入 Sample Input
5
13
11 8
12 7 26
6 14 15 8
12 7 13 24 11
样例输出 Sample Output
86
数据范围及提示 Data Size & Hint
数字三角形
这是棋盘类型DP非常经典的一道例题吧,要注意的只有两点,第一,N=1的情况,第二,边界时候动态转移方程的变化
动态转移方程:
(j == 1) tower[i][j] += tower[i - 1][j];
(j == i) tower[i][j] += tower[i - 1][j - 1];
其他 ower[i][j] += max(tower[i - 1][j] , tower[i - 1][j - 1]);
(j == i) tower[i][j] += tower[i - 1][j - 1];
其他 ower[i][j] += max(tower[i - 1][j] , tower[i - 1][j - 1]);
代码如下:
/************************************************************************* > File Name: 数字三角形.cpp > Author: zhanghaoran > Mail: chilumanxi@gmail.com > Created Time: 2015年07月02日 星期四 14时38分47秒 ************************************************************************/#include <iostream>#include <algorithm>#include <utility>#include <cstring>using namespace std;int N;long tower[101][101];int temp = 0;int main(void){cin >> N;for(int i = 1; i <= N; i ++){for(int j = 1; j <= i; j ++){cin >> tower[i][j];if(i > 1){if(j == 1)tower[i][j] += tower[i - 1][j];else if(j == i)tower[i][j] += tower[i - 1][j - 1];elsetower[i][j] += max(tower[i - 1][j] , tower[i - 1][j - 1]);}if(i == N){if(temp < tower[i][j])temp = tower[i][j];}}}if(N == 1)temp = tower[1][1];cout << temp << endl;return 0;}
0 0
- CODE[VS] 1220 数字三角形
- code(vs)1220 数字三角形(普通dp)
- code[vs] 1220数学三角形
- Code[vs]数字三角形(基础棋盘dp)
- wikioi 1220 数字三角形
- 1220 数字三角形
- Codevs 1220 数字三角形
- 【codevs 1220】数字三角形
- CODEVS 1220数字三角形
- CODEVS 1220 数字三角形
- 1220 数字三角形
- Wiki OI 1220 数字三角形
- 数字三角形!
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 2015年第二季度总结
- xcode6以后怎么添加pch文件
- 取给定正整数的指定bit位开始的指定长度的数据
- STM32F10x 学习笔记3(CRC计算单元)
- C# Unicode转义(\uXXXX)解码
- CODE[VS] 1220 数字三角形
- JSP中javaBean一些问题
- 【SuperMap .Net 组件】三维自定义专题图
- 调试说明
- [jquery实例] 点击返回顶部top
- Android动画之Interpolator和AnimationSet
- mac的sed不支持\t
- depmod: ERROR: could not open directory /lib/modules/ 解决方法
- Google输了官司,物联网恐怕也不能用Java了吧