秋招突击——算法——模板题——区间DP(1)——加分二叉树

文章目录

        • 题目描述
        • 思路分析
        • 实现代码
        • 分析总结

题目描述

在这里插入图片描述

思路分析

在这里插入图片描述

在这里插入图片描述

实现代码
  • 不过我的代码写的真的不够简洁,逻辑不够清晰,后续多练练吧。
// 组合数问题
#include <iostream>
#include <algorithm>using namespace std;const int N = 35;
int n,f[N][N],g[N][N],w[N];
// f[i][j]表示区间i到j的构成的二叉树最大的加数
// g[i][j]表示区间i到j的构成最大加数二叉树的根节点的坐标
// w[i]表示第i个节点的权值void dfs(int l,int r){if(l > r) return;int k = g[l][r];cout<<k<<" ";dfs(l,k-1);dfs(k + 1,r);}int main(){cin>>n;for(int i = 1;i <= n;i ++) cin>>w[i];// 遍历区间的长度for (int len = 1; len <= n; ++len) {// 遍历区间左端点for (int i = 1; i + len - 1 <= n ; ++i) {int j = i + len -1;// 左右节点相等,不用额外尽心遍历if (i == j) f[i][j] = w[i],g[i][j] = i;else{// 遍历划分节点,总共是三种情况for (int k = i; k <= j; ++k) {int score = 0;if (k == i){// 划分节点在左端点,没有左子节点score = w[k] + f[ k + 1][j];}else if (k == j){// 划分节点在右端点,没有右子节点score = w[k] + f[i][k - 1];}else{// 划分节点在中间,左右子节点都有score = w[k] + f[i][k - 1] * f[k + 1][j];}// 记录顶点节点if(f[i][j] < score) {f[i][j] = score;g[i][j] = k;}}}}}cout<<f[1][n]<<endl;dfs(1,n);};
分析总结
  • 在这里要知道一些关于前序、后序还有中序转换的问题,既然考到了,但是我一点都想不起来。
  • 思路分析很重要

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

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

相关文章

FreeSwitch视频会议同时支持内网和外网接入

我们在使用freeswitch进行视频会议时&#xff0c;之前所有的用户都是通过外网的方式接入&#xff0c;因为fs给其返回的sdp协议内容里&#xff0c;只需要fs配置的外网IP就可以了&#xff1b;最近由于引入新的业务需要有其他内网的服务器也可以直接接入fs的视频会议房间&#xff…

v4l2抓取rv1126图像

0.准备工作 本文是基于正点原子的rv1126开发板使用mx415摄像头对不同节点的图像进行抓取 1.数据流向 图1 mx415采集到的数据为原始的拜尔格式&#xff08;也就是raw格式&#xff09;&#xff0c;我们需要通过isp进行图像的调节才符合视觉&#xff0c;其中isp和ispp是两个处理的…

IT人的拖延——没兴趣又必须做怎么办?

人在职场,难免会被安排一些“不感兴趣”或者“觉得做了没什么意义或成就感”的事情,但是这些事情又被安排到自己身上不得不做了,于是人就难免有了拖延的迹象。这种拖延是“内在激励不足”导致的,因为从内心就觉得这个事情没什么挑战感,自己根本不感兴趣,或者就是重复的工…

异构图的连接预测三

异构图的连接预测三 总结&#xff1a; 做完了异构图的连接预测&#xff0c;我的疑虑还是挺多呢。 问题一&#xff1a; 为啥要使用’user’:self.user_emb(data[‘user’].node_id),生成用户的嵌入向量呢&#xff1f; 答&#xff1a;因为要使用到用户节点的特征&#xff0c;就是…

java中 stream()、parallelStream() 的区别对比,forEach()、forEachOrdered() 的区别对比

一、stream()、parallelStream()区别 1、数据准备 List<String> list = ListUtil.toList("2", "1", "3", "4", "5"); 2、stream() 示例 list.stream().forEach(item -> {System.out.println("stream.forEac…

zynq PS端 GPIO

记录一下PS端 GPIO 1. GPIO 简介 ZYNQ PS 中包含一组丰富的外设&#xff0c;用于和外部设备进行通信。ZYNQ 的 IO 包括对外连接的 GPIO 和内部 PS 与 PL 通信的 AXIO。其中对外的 GPIO 又分为两种&#xff1a;MIO 和 EMIO。 MIO 和 EMIO 只是 GPIO 信号的两种接口&#xff0c…

htop安装不了怎么解决

&#x1f31f;&#x1f30c; 欢迎来到知识与创意的殿堂 — 远见阁小民的世界&#xff01;&#x1f680; &#x1f31f;&#x1f9ed; 在这里&#xff0c;我们一起探索技术的奥秘&#xff0c;一起在知识的海洋中遨游。 &#x1f31f;&#x1f9ed; 在这里&#xff0c;每个错误都…

从零到一建设数据中台 - 数据可视化

从零到一建设数据中台(八)- 数据可视化 一、数据可视化大屏 数据可视化是借助于图形化手段,清晰有效地传达与沟通信息。 将一些业务的关键指标通过数据可视化的方式展示到一块或多块LED大屏上,以大屏为主要展示载体的数据可视化设计。 在数据可视化大屏构建过程中,为了…

排序(前篇)

1.排序的概念及其运用 2.插入排序的概念及实现 3.希尔排序的概念及实现 4.选择排序概念及实现 总代码&#xff08;对比各个排序在大量的数据情况排序所化的时间&#xff09;&#xff1a; 1.排序的概念及其运用 1.1排序的概念 排序&#xff1a;所谓排序&#xff0c;就是使…

SMS垃圾短信集F1指标分析

一、任务 SMS垃圾短信集是一组为研究SMS垃圾短信而收集数据集合&#xff0c;每条短信有两个信息&#xff0c;分别是标签信息label&#xff0c;其中spam为垃圾短信&#xff0c;ham为正常短信。以及message信息为短信内容。现在有训练集&#xff0c;训练集保存在E:\自然语言处理…

Jetpack架构组件_4. 数据绑定库页面传递数据

本篇介绍数据源从activity_main&#xff08;1级页面&#xff09;传递给include布局&#xff08;2级页面&#xff09;。 1.实现步骤 step1.修改build.gradle文件 修改app模块下的build.gradle文件&#xff0c;增加如下内容&#xff1a; dataBinding {enabled true} step2.创建…

java版本数字化时代的智能ERP管理系统:引 领企业高 效管理与创新发展

随着数字化浪潮的席卷&#xff0c;现代企业对于高 效、稳定、易于扩展的管理系统需求愈发迫切。为了满足这一需求&#xff0c;我们倾力打造了一款基于Java技术的企业级资源规划&#xff08;ERP&#xff09;管理系统。该系统以Spring Cloud Alibaba、Spring Boot、MybatisPlus、…

理解多线程看这一篇就够了

一、基本概念与关系 程序 程序是含有指令和数据的文件&#xff0c;静态地存储在磁盘等存储设备上。它是软件的实体&#xff0c;但未被激活。 进程 进程是程序的一次执行过程&#xff0c;是系统运行程序的基本单位。当程序被操作系统加载并执行时&#xff0c;就成为一个进程&a…

Nacos 进阶篇---Nacos服务下线做了哪些事情 ?(八)

一、引言 本章节是第一阶段最后一篇&#xff0c;那么我们今天要学习的源码内容是 “服务下线”. 当Nacos客户端下线的时候&#xff0c;是要去通知服务端&#xff0c;告诉服务端 “ 我已经下线&#xff0c;不可用了 ”。并且在服务下线时&#xff0c;还要去通知其他客户端服务更…

Linux命令那么多,先来一篇文件和目录管理命令!

&#x1f4a1;本文建议大家收藏&#xff01; 文件和目录管理命令 1. ls - 列出目录内容 ls命令是Linux中最常用的命令之一&#xff0c;用于列出目录中的文件和子目录。 ls显示当前目录下的所有文件和目录。 ls -l以长格式列出目录内容&#xff0c;显示文件权限、所有者、大…

如何便捷申请免费SSL证书,实现网站HTTPS安全传输

申请免费SSL证书的教程可以概括为以下几个通用步骤&#xff0c;这里以Lets Encrypt为例&#xff0c;因为它是最受欢迎的免费SSL证书提供商之一&#xff0c;同时也适用于多数其他免费SSL证书提供商&#xff1a; 1.准备工作 确认域名&#xff1a;确保你拥有一个有效的域名&…

CSS学习笔记:响应式布局的原理——媒体查询

什么是响应式布局&#xff1f; 在实际书写代码时&#xff0c;我们不会自己去手写媒体查询来实现响应式布局&#xff0c;我们一般会调用现成的代码库或使用现成的框架&#xff08;但这些代码库或框架的底层原理是媒体查询&#xff0c;所以了解媒体查询也是很有必要的&#xff0…

AB实验人群定向HTE模型1 - Causal Tree

背景 论文给出基于决策树估计实验对不同用户的不同影响。并提出Honest&#xff0c;variance Penalty算法旨在改进CART在tree growth过程中的过拟合问题。 我们举个例子&#xff1a;科研人员想衡量一种新的降血压药对病人的效果&#xff0c;发现服药的患者有些血压降低但有些血…

机架式服务器是什么?

随着科学技术的快速发展&#xff0c;服务器的种类样式也变得多种多样了&#xff0c;其中根据服务器的外观来进行分类的有塔式服务器、刀片式服务器和机架式服务器多种类型&#xff0c;其中对于塔式服务器和刀片式服务器我们还是有一定的了解的&#xff0c;所以今天小编主要来带…

I2C协议详解

文章目录 概念工作模式 原理工作原理工作流程IIC协议的关键特点IIC通信过程 优点与缺点优点缺点 概念 IIC&#xff08;Inter-Integrated Circuit&#xff09;协议&#xff0c;也常被称为TWI&#xff08;Two-Wire Interface&#xff09;协议&#xff0c;是一种用于短距离通信的…