AcWing 898. 数字三角形 (每日一题)

news2024/11/25 23:14:26

大家好 我是寸铁 希望这篇题解对你有用,麻烦动动手指点个赞或关注,感谢您的关注

注意

像数组下标出现i-1的,在循环的时候从i=1开始。

关于0x3f3f3f3f和Integer.MAX_VALUE

0x3f3f3f3f:1061109567
Integer.MAX_VALUE:2147483647
在选用Integer.MAX_VALUE时,很可能会出现数据溢出
所以在用Integer.MAX_VALUE需要先取MAX再加a[i][j];

边界值初始化

在这里插入图片描述

注:做数字三角形这题时,初始化时需要注意一下边界
由于我们状态计算时,是计算左上右下的方向的最大值。
在边界时0(左上)j+1(右下)需要进行初始化
我们在初始化每一个点的状态f[i][j]时需要多初始化两个点
每一行下标分别是0一个是j+1

模板1(INF取0x3f3f3f3f)

import java.util.*;
public class Main{
    static int N=510,INF=0x3f3f3f3f;
    static int a[][]=new int[N][N];
    static int f[][]=new int[N][N];
    public static void main(String []args){
        Scanner in = new Scanner(System.in);
        int n=in.nextInt();
        for(int i=1;i<=n;i++){
            for(int j=1;j<=i;j++){
                a[i][j]=in.nextInt();
            }
        }
        for(int i=0;i<=n;i++){
            for(int j=0;j<=i+1;j++){
                f[i][j]=-INF;
            }
        }
        f[1][1]=a[1][1];
        for(int i=2;i<=n;i++){
            for(int j=1;j<=i;j++){
            f[i][j]=Math.max(f[i-1][j-1]+a[i][j],f[i-1][j]+a[i][j]);    
            }
        }
        long res=-INF;
        for(int i=1;i<=n;i++){
            res=Math.max(res,f[n][i]);
        }
        
        System.out.println(res);
    }
}

模板2(INF取MAX_Integer)

注:

import java.util.*;
public class Main{
    static int N=510,INF=Integer.MIN_VALUE;
    static int a[][]=new int[N][N];
    static int f[][]=new int[N][N];
    public static void main(String []args){
        Scanner in = new Scanner(System.in);
        int n=in.nextInt();
        for(int i=1;i<=n;i++){
            for(int j=1;j<=i;j++){
                a[i][j]=in.nextInt();
            }
        }
        for(int i=0;i<=n;i++){
            for(int j=0;j<=i+1;j++){
                f[i][j]=-INF;
            }
        }
        f[1][1]=a[1][1];
        ///注意初始化
        for(int i=2;i<=n;i++){
            for(int j=1;j<=i;j++){
            f[i][j]=Math.max(f[i-1][j-1],f[i-1][j])+a[i][j];    
            }
        }
        long res=-INF;
        for(int i=1;i<=n;i++){
            res=Math.max(res,f[n][i]);
        }
        System.out.println(res);
    }
}

往期回顾

不清楚蓝桥杯考什么的点点下方👇

考点秘籍

想背纯享模版的伙伴们点点下方👇

蓝桥杯省一你一定不能错过的模板大全(第一期)

蓝桥杯省一你一定不能错过的模板大全(第二期)

蓝桥杯省一你一定不能错过的模板大全(第三期)

蓝桥杯省一你一定不能错过的模板大全(第四期)!!!

想背注释模版的伙伴们点点下方👇

蓝桥杯必背第一期

蓝桥杯必背第二期

往期精彩回顾

蓝桥杯上岸每日N题 第一期(一)!!!

蓝桥杯上岸每日N题第一期(二)!!!

蓝桥杯上岸每日N题第一期(三)!!!

蓝桥杯上岸每日N题第二期(一)!!!

蓝桥杯上岸每日N题第三期(一)!!!

蓝桥杯上岸每日N题 第四期(最少刷题数)!!!

蓝桥杯上岸每日N题 第五期(山)!!!

蓝桥杯上岸每日N题 第六期(求阶乘)!!!

蓝桥杯上岸每日N题 第七期(小猫爬山)!!!

蓝桥杯上岸每日N题 第八期 (全球变暖)!!!

蓝桥杯每日N题 (消灭老鼠)

蓝桥杯每日N题(杨辉三角形)

蓝桥杯每日N题 (砝码称重)

蓝桥杯上岸每日N题(鸡尾酒)

操作系统期末题库 第九期(完结)

LeetCode Hot100 刷题(第三期)

idea创建SpringBoot项目报错解决方案

数据库SQL语句(期末冲刺)

想看JavaB组填空题的伙伴们点点下方 👇

填空题

竞赛干货

算法竞赛字符串常用操作大全

蓝桥杯上岸必刷!!!(模拟/枚举专题)

蓝桥杯上岸必背!!! (第三期 DP)

蓝桥杯上岸必背!!!(第四期DFS)

蓝桥杯上岸必背!!!(第五期BFS)

蓝桥杯上岸必背!!!(第六期树与图的遍历)

蓝桥杯上岸必背!!!(第七期 最短路算法)

蓝桥杯上岸必背!!!(第八期 简单数论)

蓝桥杯上岸必刷!!!(进制、数位专题)

蓝桥杯上岸考点清单 (冲刺版)!!!

蓝桥杯上岸必背模板 (纯享版)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/941184.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

云计算在大数据分析中的应用与优势

文章目录 云计算在大数据分析中的应用云计算在大数据分析中的优势云计算在大数据分析中的示例未来发展和拓展结论 &#x1f389;欢迎来到AIGC人工智能专栏~云计算在大数据分析中的应用与优势 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒&#x1f379;✨博客主页&#xff1a;IT陈寒的博客&…

Bootstrap 源代码目录结构一览

目录 前言 Bootstrap 目录结构 Bootstrap 内容简介 Bootstrap 编译文件 CSS文件 | CSS 文件功能对比与清单 JS文件 | JS 文件功能对比与清单 Bootstrap 源码码目录 | 资源清单 前言 Bootstrap是Twitter推出的一个用于前端开发的开源工具包。它由Twitter的设计师Mark Ot…

续1-续3《你的医书是假的!批评付施威的《DDD诊所——聚合过大综合症》

DDD领域驱动设计批评文集 “软件方法建模师”不再考查基础题 《软件方法》各章合集 我写了一篇文章&#xff0c;批评付施威的《DDD诊所——聚合过大综合症》&#xff08;以下简称《DDD诊所》&#xff09;&#xff0c;文章是《你的医书是假的&#xff01;批评付施威的《DDD诊…

【JAVA】什么是异常

⭐ 作者&#xff1a;小胡_不糊涂 &#x1f331; 作者主页&#xff1a;小胡_不糊涂的个人主页 &#x1f4c0; 收录专栏&#xff1a;浅谈Java &#x1f496; 持续更文&#xff0c;关注博主少走弯路&#xff0c;谢谢大家支持 &#x1f496; 异常 1. 什么是异常1.1 概念1.2 异常的体…

第五章 树与二叉树 三、二叉树的先、中、后序遍历

一、定义 树的遍历是按照一定的顺序访问树的所有节点&#xff0c;常用的遍历方式有三种&#xff1a;先序遍历、中序遍历和后序遍历。 先序遍历&#xff1a;从根节点开始&#xff0c;按照根节点-左子树-右子树的顺序遍历整棵树&#xff0c;即先访问根节点&#xff0c;然后遍历左…

找不到mfc100u.dll,无法继续执行如何修复呢?分享三个解决方法

我想和大家分享一个常见的电脑问题&#xff1a;找不到mfc100u.dll,无法继续执行。这个问题可能会给我们带来很多不便&#xff0c;但是请不要担心&#xff0c;我将为大家介绍五个解决方法&#xff0c;帮助大家轻松修复这个问题。 mfc100u.dll是Microsoft Foundation Class (MFC)…

Python爬虫实战案例——第三例

文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff01;严禁将文中内容用于任何商业与非法用途&#xff0c;由此产生的一切后果与作者无关。若有侵权&#xff0c;请联系删除。 起点中文网月票榜加密字体处理 字体加密的原理&#xff1a;就是将一种特定的…

8.28 菱形继承 虚继承 多态 模板

#include <iostream>using namespace std;class Animal { public:Animal() {cout << "111" <<endl;}virtual void perform() 0; };class Dol:public Animal { public:Dol() {}void perform(){cout << "海豚" << endl;} };c…

人须在事上磨 方才立得住|「云上百世慧」锐评

巨大的用户群体绝不仅意味着金山银山&#xff0c;还意味着责任如山。——《人民日报》 云上百世慧&#xff0c;智能制造专题研讨会顺利开展&#xff0c;吸引了行业内的不少人才前来参会。 云上百世慧举办三期&#xff0c;共吸引行业人员400余名&#xff0c;参会企业90余家。 …

无涯教程-Python机器学习 - Stochastic Gradient Boosting函数

它也称为梯度提升机。在下面的Python食谱中,我们将通过使用pima Indians糖尿病数据集上的 sklearn 的 GradientBoostingClassifier 类来创建随机梯度Boostingensemble模型进行分类。 首先,导入所需的软件包,如下所示: from pandas import read_csv from sklearn.model_select…

从零开始探索C语言(二)----变量、常量和存储类

文章目录 1. C 变量1.1 C 中的变量定义1.2 变量初始化1.3 变量不初始化1.4 C 中的变量声明1.5 C 中的左值和右值 2. C 常量2.1 整数常量2.2 浮点常量2.3 字符常量2.4 字符串常量2.5 定义常量2.6 #define 与 const 区别 3. C 存储类3.1 auto 存储类3.2 register 存储类3.3 stati…

checkstyle检查Java编码样式:javadoc注释检查

说明 checkstyle可以检查javadoc注释是否符合规范。 Javadoc注释以/**开头&#xff0c;以 */结尾&#xff0c;可以被javadoc等工具提取&#xff0c;形式如&#xff1a; /*** 保存了一些常数.* author thb**/Javadoc注释的首行以句号&#xff08;.&#xff09;、问号&#xf…

博客写长篇,公众号写短篇

博客使用的markdown格式非常适合技术类的文章&#xff0c;我大部分博客的内容写的都很长&#xff0c;有一部分很深的内容&#xff0c;也有特别基础的内容。 因为之前写博客总会花费太多时间&#xff0c;所以量比较少&#xff0c;现在打算用更少的时间在公众号写一些简单的内容…

富文本base64字符串转file文件上传

1.富文本以html字符串格式存储 2.以图片为例&#xff0c;获取img base64字符串,转为file文件 let content "" const regEx /(?<(img src"))[^"]*?(?")/gims; let imgs content.match(regEx); let fileList []; for (let i …

8.28day48

198. 打家劫舍 - 力扣&#xff08;LeetCode&#xff09; 知识点&#xff1a;动规五部 1.dp数组的含义&#xff1a;dp数组表示打劫改房间的最大收益 2.递推公式&#xff1a;打劫i家&#xff1a;从后往前推 我们如果打劫第i家 那么第i-1家绝对不可能背打劫 所以&#xff1a;dp…

跟这几个全日制专业相比,MBA/MEM/MPA的难度只能算小弟弟~

每年很多在职考生会因为MBA联考的难度而选择放弃&#xff0c;但实际上管理类硕士的初试难度目前来说应该是国内所有双证硕士考试中最容易的类别之一了。就从每年几个在职类专业的国家线也看得出来总体竞争并未达到十分惨的地步&#xff1a; 客观来说&#xff0c;300分总分…

免费高清图片素材库,我推荐这6个~赶紧收藏!

找高清图片素材就上这6个网站&#xff0c;我强推。免费、付费、商用的素材都能找到&#xff0c;赶紧先收藏起来吧&#xff01; 菜鸟图库 美女图片|手机壁纸|风景图片大全|高清图片素材下载网 - 菜鸟图库 网站主要为新手设计师提供免费素材&#xff0c;这些素材的质量都很高&a…

【JS真好玩】自动打字机效果

目录 一、前言二、布局分析三、总体样式四、中间部分五、底部5.1 div5.2 label5.3 input 六、JS让它动起来6.1定时器6.2 字符串处理6.2.1 slice6.2.2 splice6.3.3 split 七、总结 一、前言 大家好&#xff0c;今天实现一个自动打字机效果&#xff0c;旨在实现一些网上很小的de…

【C++题解】[广州大学附属中学-AKCSP2022信心联考]数组树

P a r t Part Part 1 1 1 读题 题目描述 w g y wgy wgy有 n n n个很不错的数&#xff0c;第 i i i个数是 a i a_i ai​&#xff0c;他想用它们组一棵数树送给 a y b ayb ayb。 a y b ayb ayb对一棵数树的喜爱程度是这棵数树的每个子树包含的数的和的总和。简单来说&#xff0…

【数据结构与算法系列1】 二分法查找

给定一个 n 个元素有序的&#xff08;升序&#xff09;整型数组 nums 和一个目标值 target &#xff0c;写一个函数搜索 nums 中的 target&#xff0c;如果目标值存在返回下标&#xff0c;否则返回 -1。 示例 1: 输入: nums [-1,0,3,5,9,12], target 9 输出: 4 解释: 9 出现…