【hihoCoder】1037 : 数字三角形
题目:http://hihocoder.com/problemset/problem/1037
- 一个迷宫有n层,第 i 层有 i 个房间
- 从第i层的第i个房间(i, i)可以走到第i+1层的第i个房间或第i+1房间(i+1, i)/(i+1, i+1)
- 每个房间走出去后都不能回头
样例输入
5 //迷宫的层数
2
6 4
1 2 8
4 0 9 6
6 5 5 3 6
结果: 28
思路
动态规划
maze[i, j] = max(maze[i-1, j], maze[i-1, j-1]) 源码
- 迭代方式,从下而上
#include <iostream>
using namespace std; static int maze[][];//存储到达每一个房间收集到的最多券
static int data[][];//存储每一个房间的券 int main()
{
int maxLevel, i = , max = ;
cin >> maxLevel; for (i = ; i < maxLevel; i++)
for (int j = ; j <= i; j++)
cin >> data[i][j];
//由低层到高层计算
maze[][] = data[][];
for (int i = ; i < maxLevel; i++)
{
for (int j = ; j <= i; j++)
{
if (j > && maze[i - ][j] < maze[i - ][j - ])
maze[i][j] = maze[i - ][j - ];
else
maze[i][j] = maze[i - ][j];
maze[i][j] += data[i][j];
}
}
//找出最后一层中券最多的房间
for (i = ; i < maxLevel; i++)
{
int tmp = maxLevel - ;
if (max < maze[tmp][i])
max = maze[tmp][i];
}
cout << max << endl;
return ;
}
- 递归方式,从上而下
#include <iostream>
using namespace std; int maze[][];
int data[][];
void dp(int level)
{
if (level < )
return;
dp(level - );
for (int room = ; room <= level; room++)
{
if (level > )
{
if (room > )
maze[level][room] = maze[level - ][room] > maze[level - ][room - ] ? maze[level - ][room] : maze[level - ][room - ];
else
maze[level][room] = maze[level - ][room];
}
else
maze[level][room] = ;
maze[level][room] += data[level][room];
}
}
int main()
{
int maxLevel, i = , max = ;
cin >> maxLevel; for (i = ; i < maxLevel; i++)
for (int j = ; j <= i; j++)
cin >> data[i][j];
dp(maxLevel - );
for (i = ; i < maxLevel; i++)
{
int tmp = maxLevel - ;
if (max < maze[tmp][i])
max = maze[tmp][i];
}
cout << max << endl;
return ;
}
【hihoCoder】1037 : 数字三角形的更多相关文章
- hihoCoder 1037 数字三角形 最详细的解题报告
题目来源:hihoCoder 1037 数字三角形 解题思路:请好好看看 提示一.提示二.提示三 具体算法(java版,可以直接AC) import java.util.Scanner; public ...
- hihocoder 1037 数字三角形
#1037 : 数字三角形 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 问题描述 小Hi和小Ho在经历了螃蟹先生的任务之后被奖励了一次出国旅游的机会,于是他们来到了大洋彼岸 ...
- hihoCoder #1037 : 数字三角形 (动态规划)
题目链接:https://hihocoder.com/problemset/problem/1037# 问题描述 小Hi和小Ho在经历了螃蟹先生的任务之后被奖励了一次出国旅游的机会,于是他们来到了大洋 ...
- hihoCoder#1037 : 数字三角形(DP)
[题目链接]:click here~~ 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 问题描写叙述 小Hi和小Ho在经历了螃蟹先生的任务之后被奖励了一次出国旅游的机会,于是他 ...
- poj-3176 Cow Bowling &&poj-1163 The Triangle && hihocoder #1037 : 数字三角形 (基础dp)
经典的数塔模型. 动态转移方程: dp[i][j]=max(dp[i+1][j],dp[i+1][j+1])+p[i][j]; #include <iostream> #include ...
- 【HIHOCODER 1037】 数字三角形
链接 问题描述 小Hi和小Ho在经历了螃蟹先生的任务之后被奖励了一次出国旅游的机会,于是他们来到了大洋彼岸的美国.美国人民的生活非常有意思,经常会有形形色色.奇奇怪怪的活动举办,这不,小Hi和小Ho刚 ...
- G:数字三角形
总时间限制: 1000ms 内存限制: 65536kB描述73 88 1 02 7 4 44 5 2 6 5 (图1) 图1给出了一个数字三角形.从三角形的顶部 ...
- 4829 [DP]数字三角形升级版
4829 [DP]数字三角形升级版 时间限制: 1 s 空间限制: 16000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 从数字三角形的顶部(如图, ...
- 【递归】数字三角形 简单dp
[递归]数字三角形 题目描述 对于大多数人来说,“我们是这么的正常,因此也就这么的平庸.”而天才总是与众不同的,所以当邪狼问修罗王:“老大,你蹲在那儿一动不动看了有半个小时了,蚂蚁有那么好看吗?” 修 ...
随机推荐
- Programming with Objective-C ----------Encapsulating Data
Most Properties Are Backed by Instance Variables By default, a readwrite property will be backed by ...
- PAT MOOC dataStructure 4-1
数据结构练习 4-1 AVL 树 1. 题目: Input Specification: Each input file contains one test case. For each case, ...
- 公众平台调整SSL安全策略 不再支持SSLv2、SSLv3版本
昨天夜间,微信团队发布重要安全策略调整,将关闭掉SSLv2.SSLv3版本支持,不再支持部分使用SSLv2. SSLv3或更低版本的客户端调用.请仍在使用这些版本的开发者于11月30日前尽快修复升级. ...
- 第2月第25天 BlocksKit
1.blockskit https://github.com/zwaldowski/BlocksKit bk_showAlertViewWithTitle 2.toast +(void)showToa ...
- javascript数据结构-介绍
github博客地址 名词解释 数据结构是计算机存储.组织数据的方式.数据结构是指相互之间存在一种或多种特定关系的数据元素的集合.通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率.数据结构 ...
- (备忘)Rect和RectF的区别
1.Rect的变量使用int类型,而RectF使用float类型. 2.一些方法区别 <1>.Rect类 equals(Object obj) (for some reason it as ...
- sql server 2008 数据的行转列
create table tb(id int, value varchar(10)) insert into tb values(1,'aa') insert into tb values(1,'bb ...
- WebService的创建发布及部署
1.打开win7的IIS功能: http://jingyan.baidu.com/article/2a138328ae4b85074b134f55.html 2.IIS注册Frameworkt4.0 ...
- 单节点下多个Tomcat服务器并存的端口号配置
一个服务器节点同时安装多个tomcat服务器时,如果仅仅修改访问端口号则会提示端口冲突启动失败,还需要修改另外端口号解决,一共需要修改3处地方,修改如下: 编辑配置文件:server.xml 1.首先 ...
- SQL优化
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...