简单的dp题(898.数字三角形)

给定一个如下图所示的数字三角形,从顶部出发,在每一结点可以选择移动至其左下方的结点或移动至其右下方的结点,一直走到底层,要求找出一条路径,使路径上的数字的和最大。738810274445265输入格式第一行包含整数n,表示数字三角形的层数。接下来n行,每行包含若干整数,其中第 i 行表示数字三角形第 i 层包含的整数。输出格式输出一个整数,表示最大的路径数字和。数据范围1 ≤ n ≤ 500−10000≤三角形中的整数≤10000输入样例:573 88 1 02 7 4 44 5 2 6 5输出样例:30代码:(C++)#include<iostream>#include<cstring>#include<algorithm>using namespace std;const int N=510;int n,w[N][N],f[N][N];int main(){    cin>>n;//读入层数 for(int i=1;i<=n;i++){ for(int j=1;j<=i;j++){            cin>>w[i][j];//读入w[N][N]数组 } }    for(int i=1;i<=n;i++) f[n][i]=w[n][i];//读入f[n][i]for(int i=n-1;i;i--){ for(int j=1;j<=i;j++){ f[i][j]=max(f[i+1][j],f[i+1][j+1])+w[i][j];//逐层返回找最大 } }cout << f[1][1] << endl;//输出求和至顶点的结果 f[1][1] = 30return 0;}解析:题目给的数字三角形测试样例为5*5,从第4行到最后一行有8次选择,因为自上而下是要么wf[i+1][j],要么w[i+1][j+1],对于1来说它只能由3、8推算,但对于0来说只能从8推算而不能从w[2][3]推算,这个时候需要判断边界,这就涉及到了边界问题(不太会处理)。而逆推一下,从4,5,2,6,5开始往上走,就不用讨论边界,因为每一个数字w[i][j]都必然从w[i+1][j]或者w[i+1][j+1]推算而来。所以我们只需要先把最后一行读入f[N][N]数组,这样可以解决掉未先读入n行时出现的来源问题,即避免判断第n行是否由第n+1行数据进行下一步比较推得。然后根据n-1行的数据进行max(a,b)比值就能顺利解决此问题。进行循环后最终的f[1][1]一定就是我们所要的最终结果。738810274445265

(0)

相关推荐

  • 【每日编程-424期】西安电子科技大学上机题(三)

    请写一个程序,对于一个m行m列的(1<m<10)的方阵,求其每一行,每一列及主对角线元素之和,最后按照从大到小的顺序依次输出.输入说明:共一组数据,输入的第一行为一个正整数,表示m,接下来 ...

  • PTA 1012 数字分类 C#

    给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字: A1 = 能被 5 整除的数字中所有偶数的和: A2 = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n1−n2+n ...

  • P4427 [BJOI2018]求和

    题目描述 master 对树上的求和非常感兴趣.他生成了一棵有根树,并且希望多次询问这棵树上一段路径上所有节点深度的kk 次方和,而且每次的kk 可能是不同的.此处节点深度的定义是这个节点到根的路径上 ...

  • 【初中数学】最短路径问题12种模型,都在这里!

    最短路径问题是图论研究中的一个经典算法问题, 旨在寻找图(由结点和路径组成的)中两结点之间的最短路径.算法具体的形式包括以下情况: 1. 确定起点的最短路径问题:即已知起始结点,求最短路径的问题: 2 ...

  • 2020.11.14-pta天梯练习赛补题

    7-7 矩阵A乘以B 给定两个矩阵A和B,要求你计算它们的乘积矩阵AB.需要注意的是,只有规模匹配的矩阵才可以相乘.即若A有R​a​​行.C​a​​列,B有R​b​​行.C​b​​列,则只有C​a​​ ...

  • PTA 1019 数字黑洞

    给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有" ...

  • 【涛哥“说真题”】求三角形面积,条件不足?学霸笑了!掌握模型,原来如此简单!

    难度系数:☆☆☆(满分5星) [自己先做一下,试试看,别急着看答案!] 真题是最好的老师! 一.什么是真题--真实出现       真题是在考试中真实出现的,凡是不在考试中出现的试题均不算真题,顶多可 ...

  • 史上最简单的压轴题?

    史上最简单的压轴题?

  • 田开斌——一道简单的几何题及其解答

    酒逢知己千杯少,话不投机半句多 本文选自田开斌的新浪博客"杏坛孔门2014"的博文.田开斌,奥数高手,著名的"文武光华"掌门人之一,特长是十八般兵器样样精通.征 ...

  • 练习题092-1:简单的筛选题却难倒了用表十年的老表哥

    函数公式.职场模板.财务应用.分析图表.练习题.软件工具.表格合并.Office 365.Power Query.表格美化.符号作用.条件格式.学会骗.一本不正经.避坑指南.数据整理.筛选技巧.偷懒宝 ...

  • 八2020年级数学北师大版镶嵌的简单设计高频题

    八年级数学北师大版镶嵌的简单设计高频题   1.有一个数值转换器,原理如下:当输入的x为64时,输出的y是    答案B    解析   2.如图,将边长为8㎝的正方形ABCD折叠,使点D落在BC边的 ...

  • 中考数学北京课标版镶嵌的简单设计创新题

    中考数学北京课标版镶嵌的简单设计创新题   1.正方形.正方形和正方形的位置如图4所示,点在线段上,正方形的边长为4,则的面积为:A.10B.12C.14D.1    答案D    解析   2.在一 ...

  • 九年级数学沪科版用二次函数解决简单实际问题高频题

    九年级数学沪科版用二次函数解决简单实际问题高频题   1.(2013?盐城)如图①是3×3正方形方格,将其中两个方格涂黑,并且使涂黑后的整个图案是轴对称图形,约定绕正方形    答案C    解析试题 ...

  • 八年级数学苏科课标版简单函数及简单实际问题压轴题

    八年级数学苏科课标版简单函数及简单实际问题压轴题   1.小明在做解方程作业时,不小心将方程中的一个常数污染了看不清楚,被污染的方程是●,怎么办呢?小明想了一想便翻看了书    答案D    解析   ...

  • 【每日一题】八年级数学压轴题训练之三角形...

    [每日一题]八年级数学压轴题训练之三角形的综合题,涉及等边三角形,直角三角形,三角形内角,灵活运用这些相关的知识点才能轻松搞定这一题.