当前位置: 首页 > news >正文

算法基础之数字三角形

数字三角形

  • 核心思想:线性dp

    • 集合的定义为 f[i][j] –> 到i j点的最大距离

    • 从下往上传值 父节点f[i][j] = max(f[i+1][j] , f[i+1][j+1]) + w[i][j]

    • 初始化最后一层 f = w

    • 在这里插入图片描述

    •   #include <bits/stdc++.h>using namespace std;const int N = 510;int w[N][N],f[N][N];int n;int main(){cin >> n;for (int i = 1; i <= n; i++)for (int j = 1; j <= i; j++)cin >> w[i][j];for(int i=1;i<=n;i++) f[n][i] = w[n][i]; for (int i = n - 1; i >= 1; i--)for (int j = 1; j <= i; j++)f[i][j] = max(f[i + 1][j + 1], f[i + 1][j]) + w[i][j];  //左孩子和右孩子取最大 + 距离cout << f[1][1] << endl;}
      
    • 优化版:

      •   #include <bits/stdc++.h>using namespace std;const int N = 510;int f[N][N];int n;int main(){cin >> n;for (int i = 1; i <= n; i++)for (int j = 1; j <= i; j++)cin >> f[i][j];for (int i = n - 1; i >= 1; i--)for (int j = 1; j <= i; j++)f[i][j] = max(f[i + 1][j + 1], f[i + 1][j]) + f[i][j];//用完f[i][j]距上一层距离 就将其更新成距底部距离cout << f[1][1] << endl;}
        
http://www.lryc.cn/news/266830.html

相关文章:

  • 蓝桥杯宝藏排序题目算法(冒泡、选择、插入)
  • 如何使用Docker部署Dashy并无公网ip远程访问管理界面
  • 【接口测试】如何定位BUG的产生原因
  • JavaScript 中的短路求值(if语句简洁写法--逻辑运算符||和的高级用法)
  • 普本毕业,还有逆风翻盘的机会吗?
  • spark:RDD编程(Python版)
  • 中国元宇宙论坛暨常孝元宇宙发布会即将在京举行
  • 华为认证 | 云计算方向HCIE有效期多久?实验报名费多少?
  • 动物分类识别教程+分类释义+界面展示
  • 【Java动态代理如何实现】
  • 数据库(部分函数)
  • 基于Vite+Vue3 给项目引入Axios
  • 为什么查企业的时候有的公司没有显示注册资金?
  • DataProcess-VOC数据图像和标签一起进行Resize
  • MultiValueMap
  • 山西电力市场日前价格预测【2023-12-25】
  • 【华为OD机试真题2023CD卷 JAVAJS】5G网络建设
  • OSI 七层参考模型及TCP/IP 四层模型
  • 【面向对象】对比JavaScript、Go、Ada、Python、C++、Java、PHP的访问限制。
  • 力扣(leetcode)第26题删除有序数组中的重复项(Python)
  • 【内存泄漏】内存泄漏及常见的内存泄漏检测工具介绍
  • FPGA-ZYNQ-7000 SoC在嵌入式系统中的优势
  • 如何在Vue3中实现无缝热重载:提升你的开发效率
  • 盒子 Box
  • uni-app附件下载预览 并解决打开附件时黑屏
  • 卸载了Visual Studio后,在vscode中执行npm i或npm i --force时报错,该怎么解决?
  • 渗透测试 | 信息收集常用方法合集
  • 使用 ElementUI 组件构建无边框 Window 桌面应用(WinForm/WPF)
  • JavaScript中数组的方法和函数作用域问题
  • nodejs设置x-xss-protection解决xss问题