POJ 1163 The Triangle DP题解
寻找路径,动态规划法题解。
本题和Leetcode的triangle题目几乎相同一样的,本题要求的是找到最大路径和。
逆向思维。从底往上查找起就能够了。
由于从上往下能够扩展到非常多路径。而从下往上个点的路径是由两条缩减到一条。
这样就能够非常easy记录最大路径了。
#include <stdio.h>
const short MAX_ROW = 101;
short triangle[MAX_ROW][MAX_ROW];
short table[MAX_ROW];
short row;
inline short max(short a, short b) { return a > b ? a : b; } short getMaxSum()
{
for (short i = 0; i < row; i++) table[i] = triangle[row-1][i];
for (row-=2; row >= 0; row--)
{
for (short i = 0; i <= row; i++)
{
table[i] = triangle[row][i] + max(table[i], table[i+1]);
}
}
return table[0];
} int main()
{
while (~scanf("%d", &row))
{
for (short i = 0; i < row; i++)
{
for (short j = 0; j <= i; j++)
{
scanf("%d", &triangle[i][j]);
}
}
printf("%d\n", getMaxSum());
}
return 0;
}
POJ 1163 The Triangle DP题解的更多相关文章
- poj 1163 The Triangle(dp)
The Triangle Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 43993 Accepted: 26553 De ...
- poj 1163 The Triangle &poj 3176 Cow Bowling (dp)
id=1163">链接:poj 1163 题意:输入一个n层的三角形.第i层有i个数,求从第1层到第n层的全部路线中.权值之和最大的路线. 规定:第i层的某个数仅仅能连线走到第i+1层 ...
- POJ 1163 The Triangle(简单动态规划)
http://poj.org/problem?id=1163 The Triangle Time Limit: 1000MS Memory Limit: 10000K Total Submissi ...
- POJ 1163 The Triangle【dp+杨辉三角加强版(递归)】
The Triangle Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 49955 Accepted: 30177 De ...
- POJ 1163 The Triangle 简单DP
看题传送门门:http://poj.org/problem?id=1163 困死了....QAQ 普通做法,从下往上,可得状态转移方程为: dp[i][j]= a[i][j] + max (dp[i+ ...
- 递推DP POJ 1163 The Triangle
题目传送门 题意:找一条从顶部到底部的一条路径,往左下或右下走,使得经过的数字和最大. 分析:递推的经典题目,自底向上递推.当状态保存在a[n][j]时可省去dp数组,空间可优化. 代码1: /*** ...
- OpenJudge/Poj 1163 The Triangle
1.链接地址: http://bailian.openjudge.cn/practice/1163 http://poj.org/problem?id=1163 2.题目: 总时间限制: 1000ms ...
- poj 1163 The Triangle 记忆化搜索
The Triangle Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 44998 Accepted: 27175 De ...
- POJ - 1163 The Triangle 【动态规划】
一.题目 The Triangle 二.分析 动态规划入门题. 状态转移方程$$DP[i][j] = A[i][j] + max(DP[i-1][j], DP[i][j])$$ 三.AC代码 1 #i ...
随机推荐
- Eclipse批量替换
情景: 我需要将项目中所有有"上样板"的字样替换为"PCR板",如果寻找单个页面肯定是很麻烦,而且替换很有可能不全,那么该怎么才能完全替换呢? 解决方法: ec ...
- android 管理手机短信
为了看代码方便,一边在网上google资料,一边看Android java 源代码. 偶然发现了一个类MmsSmsDatabaseHelper.java,原来android将所有的短信信息都存入了mm ...
- VirtualBox 安装虚拟机
- ExtJS GridPanel的ColumnModel 动态加载
var colM = "company,id,flyline"; var colMArr = colM.split(","); var colLength = ...
- 视图Ext.Viewport和窗口Ext.Window用法
Viewport不需要再指定renderTo,而我们也看到Viewport确实填充了整个浏览器显示区域,并会随着浏览器显示区域大小的改变而改改.他有三个特点: 1).创建即可使用.不需要渲染,当组件在 ...
- 不知道如何处理的Windows Phone异常
后台收到这么一段异常信息,从下文中看是SQL Server Compact database出错了,但怎么出错的,为什么会出错,如何避免? 没有一点办法,如果您fix过这种问题,恳请指点迷津,谢谢! ...
- 关于OpenLDAPAdmin管理页面提示“This base cannot be created with PLA“问题. Strong Authentication Required问题
经过查询,最终总结和处理如下: 1.首先需要在/etc/openldap/目录下,创建一个base.ldif文件,如下所示: 2.在base.ldif文件中,写入如下信息,为创建初始化根节点做准备工作 ...
- 《3D打印:三维智能数字化创造(全彩)》
<3D打印:三维智能数字化创造(全彩)> 基本信息 作者: 吴怀宇 出版社:电子工业出版社 ISBN:9787121220630 上架时间:2014-1-13 出版日期:2014 年1月 ...
- 编程之美读书笔记1.1——让CPU占用率曲线听你的指挥
http://blog.csdn.net/pipisorry/article/details/36189155 <strong><span style="font-size ...
- Rabbit MQ UI 重置 用户名 密码
新增admin用户 rabbitmqctl add_user newadmin s0m3p4ssw0rd rabbitmqctl set_user_tags newadmin administrato ...