1002 数塔取数问题 

基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题

 收藏

 关注

一个高度为N的由正整数组成的三角形,从上走到下,求经过的数字和的最大值。

每次只能走到下一层相邻的数上,例如从第3层的6向下走,只能走到第4层的2或9上。

5

8 4

3 6 9

7 2 9 5

例子中的最优方案是:5 + 8 + 6 + 9 = 28

Input

第1行:N,N为数塔的高度。(2 <= N <= 500)
第2 - N + 1行:每行包括1层数塔的数字,第2行1个数,第3行2个数......第k+1行k个数。数与数之间用空格分隔(0 <= A[i] <= 10^5) 。

Output

输出最大值

Input示例

4
5
8 4
3 6 9
7 2 9 5

Output示例

28

和HDU1176基本一样。从最后一行往前走。状态转移方程:dp[i][j]=max(dp[i+1][j],dp[i+1][j+1])

AC代码

#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
#include <math.h>
#include <limits.h>
#include <map>
#include <stack>
#include <queue>
#include <vector>
#include <set>
#include <string>
#define ll long long
#define ms(a) memset(a,0,sizeof(a))
#define pi acos(-1.0)
#define INF 0x3f3f3f3f
const double E=exp(1);
const int maxn=1e3+10;
using namespace std;
int dp[maxn][maxn];
int main(int argc, char const *argv[])
{ios::sync_with_stdio(false);int n;int m=0;ms(dp);cin>>n;for(int i=1;i<=n;i++){m+=1;for(int j=1;j<=m;j++){cin>>dp[i][j];}}for(int i=n;i>=1;i--){for(int j=m;j>=1;j--){dp[i][j]+=max(dp[i+1][j],dp[i+1][j+1]);}m--;}cout<<dp[1][1]<<endl;return 0;
}

转载于:https://www.cnblogs.com/Friends-A/p/10324419.html

51Nod 1002:数塔取数问题(DP)相关推荐

  1. 51Nod-1002 数塔取数问题【DP】

    1002 数塔取数问题 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 一个高度为N的由正整数组成的三角形,从上走到下,求经过的数字和的最大值. 每次只能走到下一层相 ...

  2. 2022-5-20 吃月饼(something wrong), 数塔取数问题, 制铁棒, 子段统计, 炮兵阵地

    1. 吃月饼 有一块月饼,是正三角形的,又被分割成了许多块小正三角形的月饼,里面有若干块被吃掉了.现在想要在这块月饼中再找一个由小正三角形月饼的正三角形月饼,而且要求面积最大的. 样例解释: 大月饼的 ...

  3. 算法.动态规划 导航/数塔取数字问题

    目录 前言 从1+1开始 总结下概念 地图到图 回头看 代码 动态规划经典问题 前言 下面的概念和公式可能会吓到你,看不懂没关系,就是让你恶心的.反正我看着也挺恶心,专业就是让你看不懂,看懂了怎么能叫 ...

  4. python 动态规划 数塔_数塔问题,简单的动态规划算法

    /* 数塔问题: 9 12 15 10 6 8 2 18 9 5 19 7 10 4 16 有形如图所示的数塔,从顶部出发,在每一结点可以选择向左走或是向右走, 一直走到底层,要求找出一条路径,使路径 ...

  5. 计算机系统存数及取数方式,计算机系统结构总结2

    第二章 指令系统 指令系统是软件和硬件分界面的一个主要标志 数据类型: (1)数据表示:面向硬件.指令系统 (2)数据结构:面向软件.应用领域 数据表示指的是能由机器硬件直接识别和引用的数据类型 确定 ...

  6. Vijos1451圆环取数[环形DP|区间DP]

    背景 小K攒足了路费来到了教主所在的宫殿门前,但是当小K要进去的时候,却发现了要与教主守护者进行一个特殊的游戏,只有取到了最大值才能进去Orz教主-- 描述 守护者拿出被划分为n个格子的一个圆环,每个 ...

  7. P1288 取数游戏II

    题目描述 有一个取数的游戏.初始时,给出一个环,环上的每条边上都有一个非负整数.这些整数中至少有一个0.然后,将一枚硬币放在环上的一个节点上.两个玩家就是以这个放硬币的节点为起点开始这个游戏,两人轮流 ...

  8. 【动态规划】方格取数 (ssl 1010)

    方格取数方格取数方格取数 Description 设有N*N的方格图(N<=10,我们将其中的某些方格中填入正整数,而其他的方格中则放入数字0.如下图所示(见样例): 某人从图的左上角的A 点出 ...

  9. 洛谷P1288 取数游戏II[博弈论]

    题目描述 有一个取数的游戏.初始时,给出一个环,环上的每条边上都有一个非负整数.这些整数中至少有一个0.然后,将一枚硬币放在环上的一个节点上.两个玩家就是以这个放硬币的节点为起点开始这个游戏,两人轮流 ...

  10. 数据分析只能当一辈子取数机?可能你缺少这个基础思维

    前几天写了一篇数据分析思维的文章,反响不错.我决定再写一些数据分析思维方面的文章. 数据分析的方法很多,思维的技巧也很多,面对具体问题的时候,如何选择合适的方法?古人说"运用之妙,存乎一心& ...

最新文章

  1. 租车信息系统数据库设计(3)
  2. html游戏禁止微信浏览器下拉,如何用电脑模拟微信浏览器浏览禁止PC打开的微网站...
  3. MySQL唯一索引与主键的区别:主键相当于一本书的页码,索引相当于书的目录
  4. PHP通过URL传递session_id
  5. (十)nodejs循序渐进-高性能游戏服务器框架pomelo之介绍和安装篇
  6. 最强CNN语音识别算法开源了:词错率5%,训练超快,Facebook出品
  7. linux关于子网掩码函数,Linux 子网掩码计算, 二进制十进制互相转换
  8. c语言用switch做一个计算器,求助。。关于用switch编写简易计算器
  9. 天线巴伦制作和原理_一种2.4GHz巴伦天线的制作方法
  10. linux系统下mysql编码格式,Windows、Linux系统下mysql编码设置
  11. 关于Nginx mmap(MAP_ANON|MAP_SHARED, 314572800)报错
  12. 开通期货所需要的材料和条件
  13. elasticsearch 的分词
  14. Java中的boolean类型
  15. html页面标题是什么,javascript如何获取网页的标题(title)?
  16. Linux Shell 脚本之循环语句
  17. 教室预约系统mysql_PHP+MySQL教室预约管理系统的设计与实现
  18. PHP 如何安装ionCube扩展
  19. 韩国人彻底疯狂了,竟想向中俄索要大片领土
  20. window脚本,常用命令与脚本实例

热门文章

  1. 拓端tecdat|R语言基于ARMA-GARCH过程的VaR拟合和预测
  2. SQL Server 环境搭建
  3. 【Caffe代码解析】compute_image_mean
  4. python实现切割url得到域名、协议、主机名等各个字段
  5. 机器学习(三)——支持向量机SVM
  6. oracle判断日期字符串格式,如何测试日期格式字符串是否为Oracle中的有效日期格式字符串...
  7. rsr分档matlab,matlab练习程序(dubins曲线)
  8. php考试试卷,php测试题(一)
  9. chainmaker-go-sdk 查看客户端日志
  10. Kubernetes 小白学习笔记(16)--集群网络-pod网络、service网络