Problem Description

在讲述DP算法的时候,一个经典的例子就是数塔问题,它是这样描述的:

有如下所示的数塔,要求从顶层走到底层,若每一步只能走到相邻的结点,则经过的结点的数字之和最大是多少?

已经告诉你了,这是个DP的题目,你能AC吗?

Input

输入数据首先包括一个整数C,表示测试实例的个数,每个测试实例的第一行是一个整数N(1 <= N <= 100),表示数塔的高度,接下来用N行数字表示数塔,其中第i行有个i个整数,且所有的整数均在区间[0,99]内。

Output

对于每个测试实例,输出可能得到的最大和,每个实例的输出占一行。

Sample Input

1
5
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5

Sample Output

30
解题代码:
 
#include    <stdio.h>#define        N    10000
#define        Max(a,b)    ((a) > (b) ? (a) : (b))int     a[N];int main(void)
{
int        n , m , i , k , j;    scanf("%d",&m);
while(m-- > 0)
{
scanf("%d",&n);
k = (1 + n) * n / 2;
for(i = 1 ; i <= k; i++)
{
scanf("%d",a+i);
}        k = k - n;
for(i = k , j = 0 ; i >= 1 ; i--)
{
a[i] = a[i] + Max(a[i+n],a[i+n-1]);
if(++j == n -1)
{
n--;
j = 0;
}
}
printf("%d\n",a[1]);    }    return    0;
}

杭电ACM 动态规划 1 数塔相关推荐

  1. 杭电ACM(HDUOJ)试题分类

    杭电ACM试题分类 第一篇 1001 这个就不用说了吧                      1002 简单的大数                            1003 DP经典问题,最 ...

  2. 杭电acm第2304题答案c语言,【转】杭电ACM试题分类

    注:网上搜的 第一篇 1001 这个就不用说了吧 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 ...

  3. 杭电ACM题目类型整理

    版权声明:(╯3╰) 转载请注明: http://blog.csdn.net/bat67 杭电acm题目分类版本1 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 10 ...

  4. 杭电ACM刷题(1):1002,A + B Problem II

    最近忙于考试复习,没有多少可供自己安排的时间,所以我利用复习之余的空闲时间去刷刷杭电acm的题目,也当对自己编程能力的锻炼吧. Problem Description I have a very si ...

  5. 【杭电ACM】1097 A hard puzzle

    [杭电ACM]1097  A hard puzzle http://acm.hdu.edu.cn/showproblem.php?pid=1097 先用int手写了算法结果竟然wrong answer ...

  6. 杭电acm2151题java的解法,杭电ACM题型分类

    杭电ACM题型分类 基础题:1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029.1032.1037.1040.1048.1 ...

  7. 杭电acm a+b问题

    杭电acm 1000 a+b问题代码 int main() { int a,b; for(;~scanf("%d%d",&a,&b);printf("%d ...

  8. 杭电ACM 1174

    //身高,又称身长,是指一个人从头顶到脚底的身体长度. //杭电ACM 1174 爆头 #include<iostream> #include<cmath> using nam ...

  9. 杭电acm 2022

    海选女主角 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

最新文章

  1. android编译的tool版本有多少,macOS Mojave(10.14.2)系统上编译LunarG/VulkanTools工程的Android版本...
  2. 前端一HTML:六:标签的关系,分类
  3. npm常用命令:ini他、install、remove及编译运行工程、使用淘宝npm镜像
  4. 马化腾内部讲座:让产品自己召唤人
  5. centos安装mysql 简书_在centos上安装mysql
  6. python 列表的推导器和内置函数
  7. hooks组件封装 react_react-hooks amp; context 编写可复用react组件的一种实践
  8. ELF文件的签名与验证
  9. Debian/Ubuntu - 解决Root用户不能远程连接服务器的问题
  10. 垂直跑马灯水平跑马灯
  11. 人工智能笔记11 --强化学习
  12. 圆通物流轨迹查询(非第三方)
  13. 我的单车游记:向西,向西,到栖霞去(一)
  14. 质量运营在美团点评智能支付业务测试中的初步实践
  15. 使用proteus仿真验证基尔霍夫定律
  16. 服务器机柜pdu安装位置,机柜电源插座和机柜之间的安装关系
  17. Java基础学习生疏知识点总结(4)——面向对象、单一职责原则、this关键字、构造方法
  18. ubuntu20.04耳机没有声音
  19. 【LOJ#573】【LNR#2】单枪匹马(线段树)
  20. [转]浅谈协方差矩阵

热门文章

  1. ISO9000在软件工程管理的应用
  2. Vue项目搭建时npm install出现npm ERR code 1报错
  3. outlook添加账号后,版本更新,无法连接的问题
  4. UDS应用层协议解析(史上最全)
  5. 巫师3储物箱在哪_巫师三百果园附近地下室箱子钥匙在哪 | 手游网游页游攻略大全...
  6. 跨境电商如何使用WhatsApp Business与客户沟通?这几个错误需要避免
  7. Python实现秒解数独
  8. 什么是元数据?它的作用及应用是什么?
  9. 我的敏捷思想成长之旅
  10. google adwords是否可以取消固定标题和广告语的顺序?