算法训练 数字三角形  时间限制:1.0s   内存限制:256.0MB问题描述(图3.1-1)示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路径,使该路径所经过的数字的总和最大。●每一步可沿左斜线向下或右斜线向下走;●1<三角形行数≤100;●三角形中的数字为整数0,1,…99;.(图3.1-1)输入格式文件中首先读到的是三角形的行数。接下来描述整个三角形输出格式最大总和(整数)样例输入573 88 1 02 7 4 44 5 2 6 5样例输出30

解题思路:这里其实主要是运用了动态规划,刚刚开始做这些题目的时候,自己对动态规划的思想也是理解的不好,但是做的多了之后,发现了一些规律。很多书上都会提到需要提出一个动态规划方程,那样就更好写程序了,我觉得吧,自己按照自己的理解的方式来也是可以的,不必那么死板。。
这个题目刚刚看到自己想到用树来解决,深度优先算法来解决,但是想想觉得太麻烦,然后看到题目要求,就是要求最大值,想到要不是左边的那个,要不是右边那个值,这样想想好像就有规律了,比如,我们倒过来想,从n个开始,现在比如输入n=5;那么a[4][4]的最大值是不是等于本身加上a[5][4] 和 a[5][5]的最大值(当然这样数组下标是从1开始),接下来,a[3][4] += a[4][4] 和a[4][5]。这样好像就可以解决了。方程好像不就是a[i-1][j]+= Math.max(a[i][j], a[i][j+1]),这样就解决了。

package com.sihai.advance;import java.util.Scanner;public class sanjiaoxing{   public static void main(String[]args){Scanner sc = new Scanner(System.in);int n = sc.nextInt();int[][]a = new int[n+1][((1+n)*n)/2+1];for(int i=1 ; i<=n ; i++){for(int j=1 ; j<=i ; j++){a[i][j] = sc.nextInt();}}for(int i=n ; i>=1 ; i--){for(int j=1 ; j<=i-1 ; j++){a[i-1][j]+= Math.max(a[i][j], a[i][j+1]);}}System.out.println(a[1][1]);}
}

关于动态规划的内容可以看一下我的这篇博客

一看就懂的动态规划入门教程

算法-动态规划(1)

蓝桥杯-数字三角形 (java)相关推荐

  1. 蓝桥杯数字三角形java,蓝桥杯数字三角形(java)

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

  2. 蓝桥杯 数字三角形

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

  3. 蓝桥杯———数字三角形(JAVA)

    题目: 上图给出了一个数字三角形.从三角形的顶部到底部有很多条不同的路径.对于每条路径,把路径上面的数加起来可以得到一个和,你的任务就是找到最大的和. 路径上的每一步只能从一个数走到下一层和它最近的左 ...

  4. 第十一届蓝桥杯 ——数字三角形

    题目描述 上图给出了一个数字三角形. 从三角形的顶部到底部有很多条不同的路径. 对于每条路径,把路径上面的数加起来可以得到一个和,你的任务就是找到最大的和. 路径上的每一步只能从一个数走到下一层和它最 ...

  5. 蓝桥杯 数字三角形 贪心+动态规划

    参考代码: #include<bits/stdc++.h> using namespace std; typedef long long ll; int data[105][105];in ...

  6. 2013蓝桥杯java试题_蓝桥杯2013决赛java本科b组试题.doc

    蓝桥杯2013决赛java本科b组试题.doc 试题一:公式求值问题描述输入n,m,k,输出下面公式的值.其中C_n^m是组合数,表示在n个人的集合中选出m个人组成一个集合的方案数.组合数的计算公式如 ...

  7. 2021第十二届蓝桥杯省赛JAVA B组 题目+答案(复现赛)

    2021第十二届蓝桥杯省赛JAVA B组 题目+答案(复现赛) A:ASC B:卡片 C:直线 D:货物摆放 E:路径 Floyed Dijkstra F:时间显示 G:最少砝码 H:杨辉三角形 I: ...

  8. 2020年第十一届蓝桥杯 - 国赛 - Java研究生组 - F.循环小数

    2020年第十一届蓝桥杯 - 国赛 - Java研究生组 - F.循环小数 在线评测 Ideas 对于一个纯循环小数,假设循环节为l,则小数为0.llll-,转换为分数就是 l / (10 ** n ...

  9. java迷宫类编程题_第十届蓝桥杯省赛java类B组 试题 E:迷宫 (动态规划之回溯法)...

    问题描述 试题 E: 迷宫 [问题描述] 下图给出了一个迷宫的平面图,其中标记为 1 的为障碍,标记为 0 的为可 以通行的地方. 010000 000100 001001 110000 迷宫的入口为 ...

最新文章

  1. python 执行vba脚本_用python批量执行VBA代码
  2. Hadoop-HBASE 热添加新节点
  3. Java NIO3:缓冲区Buffer
  4. mysql 经纬度距离 自定义函数_mysql 经纬度计算距离 自定义函数
  5. linux压缩内核镜像,zImage内核镜像解压过程详解
  6. mac 遇到的奇怪问题?
  7. 新基建东风下,程序员这样乘风破浪!
  8. Windows切换窗口
  9. 3150cdn打印机清零 hl_兄弟HL-3150/3140彩色打印机粉盒清零方法,我们提前了解一下...
  10. 嵌入式的c语言,嵌入式c语言
  11. vm安装win7 office2013
  12. ios 按钮下面加下划线_iOS 给部分文字加下划线四种方法
  13. ue4 无限地图_基于UE4的开放世界地图架构
  14. Linux终端共享分屏神器tmux
  15. (数字ic验证)从零开始的apb_watchdog验证模块搭建(二、apb直接发送激励与寄存器模型加入)
  16. Qt 之数据库QSqlite应用
  17. 【科学究竟是什么/查尔默斯】读书笔记(上)
  18. 北京大兴区强关私立幼儿园 致数千儿童无学可上
  19. 目前约五分之一日常关护是在医院外进行,未来三年这一比例将进一步提高
  20. (Halcon应用系列)Halcon+C#联合编程

热门文章

  1. prompt-toolkit 版本问题
  2. nrf51822-主从通信分析2
  3. Bech32编码 (4)地址验证示例
  4. Hyperledger Fabric 私有数据(3)交易流程
  5. 《研磨设计模式》chap4 适配器模式Adapter
  6. DES算法C语言实现
  7. 近世代数--整环与域--有限的整环是域
  8. 设计模式--原型(Prototype)模式
  9. 全网最强Python版《超级玛丽》小游戏,我还是你的马里奥嘛?
  10. [思考]-ARM LR寄存器的思考