3298: 数字三角形

时间限制: 1 Sec  内存限制: 128 MB
提交: 114  解决: 29
[提交][状态][讨论版]

题目描述

如图示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路
径,使该路径所经过的数字的总和最大。
●每一步可沿左斜线向下或右斜线向下走;
●1<三角形行数≤100;

●三角形中的数字为整数0,1,…99;

输入

文件中首先读到的是三角形的行数。

接下来描述整个三角形

输出

最大总和(整数)

样例输入

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

样例输出

30

提示

 
#include<bits/stdc++.h>
using namespace std;
#define ll long long int main()
{
int n;
while(cin >> n)
{
int a[][];
memset(a,, sizeof(a));
for(int i=;i < n;i++)
{
for(int j=;j <= i;j++)
cin >> a[i][j];
}
int b[][];
memset(b,, sizeof(b));
b[][] = a[][];
for(int i=;i < n-;i++)
{
for(int j=;j <= i;j++)
{
b[i+][j] = max(b[i][j]+a[i+][j],b[i+][j]);
b[i+][j+] = max(b[i][j]+a[i+][j+],b[i+][j+]);
}
}
// for(int i=0;i < n;i++)
// {
// for(int j=0;j <= i;j++)
// cout << b[i][j] <<" ";
// cout << endl;
// } int maxnum = -;
for(int j=;j < n;j++)
{
if(maxnum < b[n-][j])
maxnum = b[n-][j];
}
cout << maxnum << endl;
}
return ;
}

厉害!无敌!牛逼的我!

#include<bits/stdc++.h>
using namespace std;
#define ll long long
int a[][];
int n; int maxsum = -;
void dfs(int x,int y,int sum)
{
sum += a[x][y];
if(sum > maxsum)
maxsum = sum;
if(x == n)
return;
dfs(x+,y,sum);
dfs(x+,y+,sum);
}
int main()
{
while(cin >> n)
{
maxsum = -;
memset(a,, sizeof(a));
for(int i=;i < n;i++)
{
for(int j=;j <= i;j++)
{
cin >> a[i][j];
}
}
dfs(,,);
cout << maxsum << endl;
}
return ;
}
/**************************************************************
Problem: 3298
User: 2016016294
Language: C++
Result: 时间超限
****************************************************************/

一开始用dfs时间超限了。。

嘿嘿

dp练习(0)——数字三角形的更多相关文章

  1. dp递推 数字三角形,dp初学者概念总结

    数字三角形(POJ1163)          在上面的数字三角形中寻找一条从顶部到底边的路径,使得路径上所经过的数字之和最大.路径上的每一步都只能往左下或 右下走.只需要求出这个最大和即可,不必给出 ...

  2. HDU 1176 免费馅饼 (类似数字三角形的题,很经典,值得仔细理解的dp思维)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1176 免费馅饼 Time Limit: 2000/1000 MS (Java/Others)     ...

  3. 算法训练 数字三角形(DP)

    问题描述 (图3.1-1)示出了一个数字三角形. 请编一个程序计算从顶至底的某处的一条路 径,使该路径所经过的数字的总和最大. ●每一步可沿左斜线向下或右斜线向下走: ●1<三角形行数≤100: ...

  4. hihoCoder#1037 : 数字三角形(DP)

    [题目链接]:click here~~ 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 问题描写叙述 小Hi和小Ho在经历了螃蟹先生的任务之后被奖励了一次出国旅游的机会,于是他 ...

  5. Codevs 4829 [DP]数字三角形升级版

    4829 [DP]数字三角形升级版 时间限制: 1 s 空间限制: 16000 KB 题目等级 : 黄金 Gold 题目描述 Description 从数字三角形的顶部(如图,第一行的5表示行数)到底 ...

  6. 数字三角形 (DP入门)

    7 3     8 8     1     0 2     7     4     4  4     5     2     6     5 给出一个数字三角形.从三角形的顶部到底部有很多条不同的路径 ...

  7. 【线性DP】数字三角形

    题目链接 原题链接 题目描述 给定一个如下图所示的数字三角形,从顶部出发,在每一结点可以选择移动至其左下方的结点或移动至其右下方的结点,一直走到底层,要求找出一条路径,使路径上的数字的和最大. 7 3 ...

  8. 4829 [DP]数字三角形升级版

    4829 [DP]数字三角形升级版  时间限制: 1 s  空间限制: 16000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description 从数字三角形的顶部(如图, ...

  9. 数字三角形 (简单DP)

    问题描述 小Hi和小Ho在经历了螃蟹先生的任务之后被奖励了一次出国旅游的机会,于是他们来到了大洋彼岸的美国.美国人民的生活非常有意思,经常会有形形色色.奇奇怪怪的活动举办,这不,小Hi和小Ho刚刚下飞 ...

随机推荐

  1. Unity3D之预设

      预设的两个特性: 1.重用性.可以使我们快速方便的创建大量的重复性资源.这种创建是通过预设的实例化Instance操作来完成的 在Hierarchy视图中将实例物理添加到Assests中,此时图标 ...

  2. SIFT在OpenCV中的调用和具体实现(HELU版)

    前面我们对sift算法的流程进行简要研究,那么在OpenCV中,sift是如何被调用的?又是如何被实现出来的了? 特别是到了3.0以后,OpenCV对特征点提取这个方面进行了系统重构,那么整个代码结构 ...

  3. 20145310《网络对抗》注入shellcode及Return-to-libc

    Shellcode注入 基础知识 Shellcode实际是一段代码,但却作为数据发送给受攻击服务器,将代码存储到对方的堆栈中,并将堆栈的返回地址利用缓冲区溢出,覆盖成为指向 shellcode的地址. ...

  4. Python3基础 list 推导式 生成100以内的偶数列表

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  5. Python3基础 json.loads 解析json格式的数据,得到一个字典

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  6. Python3基础 lambda 简单示例

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  7. STM32定时器的预装载寄存器与影子寄存器之间的关系【转】

    首先转载:   STM32定时器的预装载寄存器与影子寄存器之间的关系 本文的说明依据STM32参考手册(RM0008)第10版:英文:http://www.st.com/stonline/produc ...

  8. HDU3652 B-number(数位DP)题解

    思路: 这里的状态分为3种,无13和末尾的1,无13且末尾为1,有13,然后DFS 等我搞清楚数位DP就来更新Orz 代码: #include<iostream> #include< ...

  9. 【eclipse】聚合工程maven启动Tomcat报错

    严重: Error configuring application listener of class严重: Skipped installing application listeners due ...

  10. MVC ---- EF的安装于卸载

    先卸载EF:Uninstall-Package EntityFramework -Force 在安装EF5.0:Install-Package EntityFramework –Version 5.0 ...