AT ABC290 F Maximum Diameter 题解

news/2025/11/2 16:47:31/文章来源:https://www.cnblogs.com/Tsuukaku/p/19185104

组合好题,注意到 \(n\) 个点的边数为 \(n - 1\),总度数为 \(2n - 2\),因此序列 \(a\) 的权值不为 \(0\) 时当且仅当 \(\sum a = 2n - 2\)\(a_i \gt 0\)

接下来是一个简单的贪心,如果对于给定的序列需要构造出一个直径最大的树,我们钦定树上有 \(k\) 个叶子节点,在 \(a\) 中体现为 \(a_i = 1\),此时只需要将剩下的 \(n - k\) 个节点全部串起来,再在两端放上两个叶子节点,构造出了一棵直径长度为 \(n - k + 2 - 1 = n - k + 1\) 的树,其余的叶子节点挂在 \(n - k\) 个节点上使其满足度数要求。

现在问题转化为,对于每个可能的叶子节点数 \(k \in [2, n - 1]\),计算有多少个序列 \(a\) 满足恰好有 \(k\)\(a_i = 1\),然后将数量乘上对应的直径 \(d\),最后统计总和就是答案。关键在于如何计算”恰好有 \(k\) 项为 \(1\)\(a\) 的数量“。推导如下:

  1. \(k\) 个叶子:\(\binom{n}{k}\)
  2. 分配剩余的度数:树的总度数和是 \(2n - 2\),其中 \(k\) 个叶子节点已经占用了 \(k \times 1 = k\) 的度数,剩下的 \((2n - 2) - k\) 的度数还必须满足分配给剩下的 \(n - k\) 个非叶子节点,同时非叶子节点要求度数 \(\geq 2\)
  3. 将剩下的 \(2n - 2 - k\) 的度数视为相同的小球,分发给定的 \(n - k\) 个节点视为不同的盒子,每个盒子至少要放 \(2\) 个球,考虑插板法来解决这个问题:
    1. 由于每个盒子至少要有 \(2\) 个小球,我们先给 \(n - k\) 个盒子都分配 \(2\) 的度数,这样就提前分配出了 \(2 \times (n - k)\) 的度数
    2. 剩余度数为 \((2n - 2 - k) - 2 \times (n - k) = 2n - 2 - k - 2n + 2k = k - 2\),问题再次转化为将 \(k - 2\) 个小球任意分配给 \(n - k\) 个不同的盒子,盒子可以为空
    3. 这就是标准的插板法:将 \(m\) 个小球放入 \(p\) 个不同的盒子,允许盒子为空的方案数是 \(\binom{m + p - 1}{p - 1}\),代入公式 \(m = k - 2, p = n - k\)
  4. 因此分配方案数为 \(\binom{(k - 2) + (n - k) - 1}{(n - k) - 1} = \binom{n - 3}{n - k - 1}\),根据组合数的性质 \(\binom{a}{b} = \binom{a}{a - b}\) 化简得到 \(\binom{n - 3}{k - 2}\)

综上所述得到了最终的求答案的式子:

\[ans = \sum_{k = 2}^{n} \binom{n}{k} \binom{n - 3}{k - 2} \left( n - k + 1 \right) \]

这样子就做到了 \(O(n)\) 求和,我们还需要一点黑科技来将其变为 \(O(1)\) 的。

第一个是吸收恒等式(Absorption Identity),形式如:

\[k \binom{n}{k} = n \binom{n - 1}{k - 1} \]

其中 \(n \geq k \geq 1\)。恒等式的作用是”吸收“系数 \(k\) 从而改变组合数参数,同样有提取出来的恒等式:

\[\binom{n}{k} = \frac{n}{k} \binom{n - 1}{k - 1} \]

证明直接展开组合数就可以了,当然通过组合意义证明更直观而且深刻,但是注意到”吸收恒等式“这个名称可能只流传在 OI 圈中,这个等式作为组合数的一个基础扩展并没有一个定称。

另一个是 范徳蒙德卷积:重点在于转化出两个组合数的下脚标之和为定值 \(k\)

\[\sum_{i = 0}^{k} \binom{n}{i} \binom{m}{k - i} = \binom{n + m}{k} \]

化简求和式:

\[\begin{aligned} ans &= \sum_{k = 1}^{n} \binom{n}{k} \binom{n - 3}{k - 2} ((n - 1) - (k - 2)) \\ &= (n - 1) \sum_{k} \binom{n}{k} \binom{n - 3}{k - 2} - \sum_{k} \binom{n}{k} (k - 2) \binom{n - 3}{k - 2} \\ \end{aligned} \]

拆开计算两者:

运用范徳蒙德卷积处理第一项:

\[\begin{aligned} &(n - 1) \sum_{k} \binom{n}{k} \binom{n - 3}{k - 2} \\ =& (n - 1) \sum_{k} \binom{n}{k} \binom{n - 3}{(n - 3) - (k - 2)} \\ =& (n - 1) \sum_{k} \binom{n}{k} \binom{n - 3}{n - k - 1} \\ =& (n - 1) \binom{2n - 3}{n - 1} \end{aligned} \]

运用吸收恒等式和卷积处理第二项:

\[\begin{aligned} & \sum_{k} \binom{n}{k} (k - 2) \binom{n - 3}{k - 2} \\ =& \sum_{k} \binom{n}{k} (n - 3) \binom{n - 4}{k - 3} \\ =& (n - 3) \sum_{k} \binom{n}{k} \binom{n - 4}{k - 3} \\ =& (n - 3) \sum_{k} \binom{n}{k} \binom{n - 4}{(n - 4) - (k - 3)} \\ =& (n - 3) \binom{n + (n - 4)}{n - 1} \\ =& (n - 3) \binom{2n - 4}{(2n - 4) - (n - 1)} \\ =& (n - 3) \binom{2n - 4}{n - 3} \end{aligned} \]

终于降为了 \(O(1)\),预处理一下组合数就做完了。

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

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

相关文章

ABC430

ABC430C. Truck Driver 二分或双指针 固定区间左端点 \(l\),找到区间中至少有 \(A\) 个 a 的最小右端点 \(r_a\),以及区间中至少有 \(B\) 个 \(b\) 的最小右端点 \(r_b\)。显然条件二更紧,所以用 \(r_b-r_a\) 来更…

团队作业1——团队展示选题-大学生健康生活管理与预警系统

这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/Class12Grade23ComputerScience这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/Class12Grade23ComputerScience/homework/13471这个作业的目标 通…

广告投放名词

直投 广告主通过广告投放平台或者Marketing API 进行广告的直接投放,利用媒体的用户数据能力以及广告模型进行广告的预估和优化。直投广告的优势在于,广告平台累计了大量的用户基础数据以及产品行为数据,得到丰富的…

自定义Linux 备份命令 backup 【from claude.ai Haiku 4.5】

自定义Linux 备份命令 backup 【from claude.ai Haiku 4.5】测试过能用在日常开发和系统维护中,我们经常需要备份文件和文件夹。虽然 cp 和 tar 命令完全可以胜任,但每次都要手动输入冗长的参数确实很麻烦。今天我就…

打造你自己的 Linux 备份命令:快速、高效、易用 【from claude.ai Haiku 4.5】

打造你自己的 Linux 备份命令:快速、高效、易用 【from claude.ai Haiku 4.5】 在日常开发和系统维护中,我们经常需要备份文件和文件夹。虽然 cp 和 tar 命令完全可以胜任,但每次都要手动输入冗长的参数确实很麻烦。…

CVE-2025-12176漏洞分析:未记录的管理账户安全风险

本文详细分析了CVE-2025-12176高危漏洞,该漏洞由于系统创建未记录的管理账户而存在安全风险。影响BLU-IC2和BLU-IC4至1.19.5版本,CVSS评分达10.0分,攻击者可远程利用此漏洞获取系统权限。概述 CVE-2025-12176是一个…

信安中级考试备忘

个人在备考的笔记,主要针对案例题Linux iptables 四表五链 私网地址A类 10.0.0.0 ~ 10.255.255.255B类 172.16.0.0 ~ 172.31.255.255C类 192.168.0.0 ~ 192.168.255.255ASCII 码记忆 A(65) a(97) 0(48) 空格(32) NUL…

pdf下载网站

pdf下载网站下载地址: 1、https://github.com/Dujltqzv/Some-Many-Books

量子力学作业 4

第 4 次作业 习题 4.5 式 \(4.25\): \[sin\theta\frac{d}{d\theta}(sin\theta\frac{d\Theta}{d\theta}) + [l(l+1)sin^2\theta-m^2]\Theta=0 \]代入 \(l=m=0\) 得: \[sin\theta\frac{d}{d\theta}(sin\theta\frac{d\T…

区间颜色类问题

即 RMQ问题(对长度为n的数列快速响应多个区间极值查询) 中的统计颜色 在此类问题中最重要的是记录:所有颜色上一次出现的位置,然后通过维护使得每种颜色只记录一次 P1972 [SDOI2009] HH 的项链 P4137 Rmq Problem / …

【URP】Unity[后处理]色彩调整ColorAdjustments

Unity URP中的Color Adjustments后处理效果用于调整最终渲染图像的整体色调、亮度和对比度,是优化视觉表现的核心工具。其发展历史可追溯至Unity 4.X时代的色彩校正曲线和3D查【从UnityURP开始探索游戏渲染】专栏-直达…

[LangChain] Runnable接口 - 1

在 LCEL 中,几乎所有的模块:提示词模板 模型 解析器都是实现了 Runnable 接口的,可以将这些模块称之为 Runnable 类型。这种类型的模块可以快速插入到链条里面。 RunnableLambda RunnableLambda 是 LangChain.js 提…

MySQL 巡检用户创建脚本(Python 版)

MySQL 巡检用户创建脚本(Python 版)脚本依赖 需先安装 MySQL 官方 Python 连接器,执行以下命令安装: pip install mysql-connector-python完整 Python 脚本 import os import getpass import mysql.connector from…

初识目标检测

一.目前我校主要研究方向就是目标检测,所以首先应对目标检测有初步了解。目标检测属于计算机视觉中的一个热门方向,主要应用于物体、人、动物识别、动作识别等。结合我校农业研究方向,通过目标检测,可以用来检测瓜…

MySQL 8.0 双密码机制:改密码不中断业务,无缝切换的安全方案

MySQL 8.0 双密码机制:改密码不中断业务,无缝切换的安全方案改数据库密码时,你是否总在“安全”和“业务连续性”之间纠结?传统单密码模式下,一旦执行密码修改,现有连接会瞬间失效,应用直接报连接错误;若等业务…

记录Vmware WorkStation下安装的ESXi DCUI下 Resolving Hostname失败

原因未知,只是摸索出了一个方法可以解决实验环境如下: 有三台机器,宿主机Host 安装Vmware Workstation Pro17,虚拟机A 装的是Windows Server,在上面装了dns服务器,虚拟机B 装了EXSi 8,虚拟网卡选择的是NAT模式问…

【为美好CTF献上祝福】python 逆向

pyinstxtractor pyinstxtractor 是一个用于解包由 PyInstaller 打包的 Python 可执行文件的工具。 能把打包后的 .exe 文件还原为原始的项目结构。

MySQL参数优化最佳实践

MySQL参数优化最佳实践作为DBA,是否遇到过这样的糟心场景:云服务器CPU、内存明明还很空闲,可一到业务高峰期,数据库就开始“掉链子”——连接超时、查询卡死不说,CPU还会突然飙到100%;查看日志更是满屏报错:“T…

班级任务数据采集与融合实验第二次报告

数据采集与融合实验第二次报告 作业1 1)实验内容 要求:在中国气象网(http://www.weather.com.cn)给定城市集的7日天气预报,并保存在数据库。 该实验先观察url格式,发现不同城市的页面只和城市代码有关,于是使用…

LVGLSharp:LVGL的C#绑定库介绍

在嵌入式系统和图形用户界面(GUI)开发领域,LVGL(Light and Versatile Graphics Library)是一个广受欢迎的开源图形库,它提供了丰富的UI组件和高效的渲染能力,适用于各种资源受限的设备。而LVGLSharp则是LVGL的一…