2024.10.7 test

news/2024/10/7 15:50:07/文章来源:https://www.cnblogs.com/Simon-Gao/p/18450167

nf #33

B

有一棵包含 \(n\) 个节点的有根树,且树的高度不超过 \(100\)。每次操作时可以选择一个节点 \(u\),使其与父节点断开(如果有),成为一颗新树的根节点,然后删除以节点 \(u\) 为根的树中的所有叶节点。
求删除所有节点所需的最少操作次数和通过最少次操作删除所有节点的方案数。\(n\le 2e5\)

显然,操作次数最少为树的深度,只需要不停操作根节点即可满足。
其次,我们能删除的点,一定满足在这棵树内不存在与其深度相同的点,所以一定在最长链上。
那么我们考虑把最长链拿出来 dp,且其长度是 \(\le 100\) 的。
对于链上每个点,求出 \(a_i\) 表示链外儿子最大的深度,其制约着我们的选择。
不难发现,我们可以把子任务划分为区间的形式,也就是当前分割出深度 \([l,r]\) 的点的方案数。
我们每次操作,相当于把当前所在区间割裂,然后使深度大的区间里的 \(a_i\) 全部减去 \(1\)
操作的条件是对于深度小的点里,\(a_i\) 最大值小于当前操作深度。
所以我们还需要再加一维状态表示当前整个区间被深度小的点减了多少次,设为 \(t\)
那么,\(dp_{l,r,t}\) 可以由 \(dp_{l,p,t}\)\(dp_{p+1,r,t+1}\) 转移,转移系数需要乘上组合数,因为两两区间独立。
其中枚举的 \(p\) 需要满足上述操作条件。复杂度 \(O(d^4)\)
这个题你需要观察出选择的点都在最长链上的性质,然后转化为一个简单的 dp。

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

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

相关文章

咸阳液压节能柱塞泥浆泵

咸阳液压节能柱塞泥浆泵具有高效输送、稳定性好、调节性强、耐磨性好、自动化程度高等优点。高效输送能够在短时间内将大量的污水输送到处理设备,提高污水处理的效率。稳定性好通过柱塞的往复运动,提供较稳定的流量和压力,保证了压滤机的稳定运行。调节性强可以通过调节柱塞…

[UESTCPC 2024] 2 聚类算法

思路 不想打了代码 后面再打 总结 写都没写怎么搞

腾讯自研Git客户端,助力每个人都可以轻松使用Git

工具介绍 UGit是一款腾讯自研的Git客户端,为了让每个人都可以轻松使用Git,从而提高开发效率和团队协作的流畅性。支持工蜂MR/CR,工蜂议题管理,另外对于Git的原生特性有着深度支持。支持的系统 支持macOS 10.11+、Apple Silicon和Win64位系统。 核心功能介绍 便捷的大文件管…

php连接数据库的基本步骤是什么

使用 PHP 连接数据库的基本步骤如下: 1. 创建数据库配置文件创建配置文件:在项目的根目录或适当的位置创建一个配置文件,例如 config.php。编写配置信息:在 config.php 文件中编写数据库连接信息。 示例配置文件内容如下:<?php // 数据库配置文件// 数据库类型 define…

php连接数据库mysql配置

使用 PHP 连接 MySQL 数据库通常涉及以下几个步骤:创建配置文件、引入配置文件、创建数据库连接、执行 SQL 查询以及关闭连接。下面是一个详细的示例: 1. 创建数据库配置文件 (config.php)创建配置文件:在项目的根目录或适当的位置创建一个配置文件,例如 config.php。编写配…

宝塔数据库老是自动停止怎么解决

宝塔数据库经常自动停止可能是由于多种原因引起的。以下是一些常见的排查和解决方法: 1. 检查错误日志查看日志:登录宝塔面板。 进入“软件管理”,找到相应的数据库(如 MySQL)。 点击“设置” -> “错误日志”,查看具体的错误信息。2. 检查配置文件检查配置文件:找到…

信息学奥赛复赛复习14-CSP-J2021-03网络连接-字符串处理、数据类型溢出、数据结构Map、find函数、substr函数

PDF文档公众号回复关键字:202410071 P7911 [CSP-J 2021] 网络连接 [题目描述] TCP/IP 协议是网络通信领域的一项重要协议。今天你的任务,就是尝试利用这个协议,还原一个简化后的网络连接场景。 在本问题中,计算机分为两大类:服务机(Server)和客户机(Client)。服务机负责…

网站403forbidden怎么解决

遇到“403 Forbidden”错误通常表示服务器拒绝了请求访问某个资源。解决这个问题可以从以下几个方面入手: 1. 检查权限设置服务器文件权限:确认服务器上的文件和目录权限是否正确。通常文件权限应为 644,目录权限应为 755。 使用命令 chmod 和 chown 调整权限:sudo chmod -…

宝塔数据库启动不了怎么办呢

如果宝塔面板中的数据库无法启动,可以按照以下步骤进行排查和解决: 1. 检查错误日志查看日志:登录宝塔面板。 进入“软件管理”,找到相应的数据库(如 MySQL)。 点击“设置” -> “错误日志”,查看具体的错误信息。2. 检查数据库配置检查配置文件:找到数据库的配置文…

公司网站出现乱码怎么解决

解决公司网站出现乱码的问题,通常可以按照以下步骤进行:检查文件编码设置确保所有网页文件(如HTML, CSS, JavaScript等)保存时使用的编码一致,推荐使用UTF-8编码。设置正确的HTTP头部信息在服务器端设置正确的Content-Type HTTP头部,确保它指定了正确的字符集,例如:Con…

公司网站出现乱码怎么处理

处理公司网站出现乱码的问题,可以按照以下步骤进行:检查字符编码设置:确认网页和数据库的字符编码是否一致,通常推荐使用 UTF-8 编码。审查 HTTP 响应头:确保服务器正确设置了 Content-Type 响应头,指明了正确的字符集。查看 HTML 元信息:在 HTML 文档中 <head> 部…

无法连接网站,因为域名解析失败

遇到“无法连接网站,因为域名解析失败”的问题时,可以尝试以下几个步骤来解决:检查网络连接:确保您的设备已正确连接到互联网。 尝试访问其他网站,看是否能正常打开。清除DNS缓存:在Windows系统中,打开命令提示符(以管理员身份运行),输入 ipconfig /flushdns 并按回车…