AT_agc063_e Child to Parent 题解

news/2025/11/16 19:16:43/文章来源:https://www.cnblogs.com/dccy/p/19228757

AT_agc063_e Child to Parent 题解

\(c_x\) 表示点 \(x\) 一共执行的操作次数,对于不同的 \(c_x\) 序列最终的 \(A\) 序列是不同的,因此我们对 \(c_x\) 序列计数即可。

容易发现一个 \(c_x\) 合法的充要是 \(0\le c_x\le A_x+R\times \sum _{v\in son(x)} c_v\),但是我们不能把 \(c_x\) 记进状态里。

尝试设 DP \(f_x\) 表示子树 \(x\) 内的答案,假如我们求出了子树 \(x\) 内所有方案的 \(c_x\) 的和 \(g_x\),那么容易转移出 \(f_x\),有:

\[f_x=(A_x+1)(\prod_{v\in son(x)} f_v)+\sum _{v\in son(x)} g_v\prod _{w\in son(x)\setminus v} f_w \]

但是这个转移没有什么用,考虑设 \(f_{x,i}\) 表示子树 \(x\) 内所有方案的 \(c_x^i\) 的和,而方案数就相当于 \(f_{x,0}\),我们的最终答案即 \(f_{1,0}\)。可以写出转移(设 \(lim=A_x+\sum c_v\)):

\[f_{x,i}=\sum _{所有方案} \sum _{t=0}^{lim} t^i \]

用第二类斯特林数将普通幂转下降幂,得:

\[\begin{aligned} f_{x,i} &= \sum _{所有方案} \sum _{t=0}^{lim} \sum _{j=0}^{i} {i\brace j}j!\binom {t}{j} \\ &= \sum _{所有方案} \sum _{j=0}^i {i\brace j} j!\sum _{t=0}^{lim} \binom{t}{j}\\ &= \sum _{所有方案} \sum _{j=0}^{i}{i\brace j} j!\binom {lim+1}{j+1} \\ &= \sum _{所有方案} \sum _{j=0}^{i} {i\brace j} \frac{(lim+1)^{\underline{j+1}}}{j+1} \end{aligned} \]

只需求出所有方案的 \((A_x+\sum c_v)^{\underline {j+1}}\) 的和即可。转化为关于儿子的 \(f_{v,i}\) 的卷积的多项式。

复杂度是 \(O(n^3)\)

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

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

相关文章

详细介绍:UVa 11129 An Antiarithmetic Permutation

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

3天掌握OpenHarmony+Python开发:高效适配教程与真实项目案例精讲 - 教程

3天掌握OpenHarmony+Python开发:高效适配教程与真实项目案例精讲 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family:…

飞牛os打开本机usb摄像头

飞牛os打开本机usb摄像头笔记本安装了飞牛os,想打开本机的USB摄像头,参考文章——Linux运维笔记[15]-网页ip摄像头 我用的是第一种办法,有些命令需要修改: 1、安装go并配置环境wget -O go_install.sh https://go.g…

CF 2156E Best Time to Buy and Sell Stock

vp 这场 E, F1 都写爆了被一起逮捕,我是人?直接求解答案似乎并不容易,因为需要考虑的大小关系太多了,于是可以尝试二分转为 01 问题。 于是尝试思考,如何判断答案是否 \(\ge w\)。 这个问题并不具有一些特殊的结构…

《重生之我成为世界顶级黑客》第七章:成功了,但没完全成功

《重生之我成为世界顶级黑客》第七章:成功了,但没完全成功继续肝,还剩一丢丢灵感。第二天清晨,龙傲天是被急促的手机铃声吵醒的。他迷迷糊糊地摸过手机,看到屏幕上显示着一个陌生的号码。出于习惯,他先是检查了一…

12306售票系统分析与实战

1. 内容介绍 MVP:Minimum Viable Product 最简化实行产品 核心功能:实体管理 生成座位 放票 查询余额 抢票 生成订单 ...核心内容:需求设计 数据库设计 项目搭建 流行的设计思想 后台管理实现 前台查余票及购买 组件…

Java StringTokenizer 类 Scanner 类详解

Java StringTokenizer 类介绍 概述 StringTokenizer 是一个遗留类,用于将字符串分割成标记(tokens)。 但在现代 Java 开发中已被更强大的 String.split() 和 Scanner 类取代,新项目应使用更现代的解决方案。 基本用…

实用指南:Open Inventor 2025.2 FOR JAVA

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

25.11.15随笔联考总结(补)

考试 开考通读题面,感觉第一题很简单,看 T2,感觉是一个比较好做的计数,T3 给人一种点分治的感觉,T4 挺神秘的不清楚。开考半个小时后决定回去验证 T1 正确性,发现假了,重新思考,想了可能有 20 多分钟大概会了,…

Java 断言(Assert) 简介

什么是断言? 断言是一种调试工具,用于在代码中检查必须为真的条件。如果条件为假,JVM 会抛出 AssertionError。 核心特点:调试工具:主要用于开发测试阶段默认禁用:需要手动启用快速失败:条件不满足时立即终止不…

2025年中小学生 AI 学习机选购指南:松鼠 AI 双线模式成优选

2025年中小学生 AI 学习机选购指南:松鼠 AI 双线模式成优选一、首选松鼠AI学习机:双线融合的“精准提分专家” 作为2025年AI教育领域的黑马品牌,松鼠AI以“AI学习机+全国1200+自习室”的创新模式,打破传统学习机“…

《重生之我成为世界顶级黑客》第六章:一线生机

《重生之我成为世界顶级黑客》第六章:一线生机已经尽可能把敏感的去掉了,不知道帖子能存在多久。唉,不让聊的。清晨六点半,龙傲天准时被闹钟唤醒。胃部的隐痛已经成了每日的例行公事,他机械地吞下一片胃药,用冷水…

20232305 2025-2026-1 《网络与系统攻防技术》实验五实验报告

1.实验内容 1.1掌握基本的信息搜集方法 1.2学习并掌握端口扫描及漏洞扫描技术 1.3利用所学知识对自己隐私加以保护 2.实验过程 2.1从www.besti.edu.cn、baidu.com、sina.com.cn中选择一个DNS域名进行查询,获取信息 2.…

遥感建筑物变化检测内容集

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

实用指南:IntelliJ IDEA 2023中为 Spring Boot 项目添加注释模板

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

【UE源码向】GameplayTag增加ToolTip

GamepayTag 的 ToolTip 增加 DevComment我想绝大部分的 UE 项目都会大量使用到 GameplayTag 的功能,主要是用来做一些功能分类、状态标记和资产引用。 问题:在引擎的早期版本中(< 5.6),GameplayTag 的鼠标悬浮…

基于c++ eigen的Nelder-Mead算法(仿照scipy)

简介 本文展示了用C++(Eigen)实现的Nelder-Mead算法,该实现仿照了Python SciPy库中的scipy.optimize.fmin函数。虽然目前仅完成了基础功能(fmin不支持full_output和retall),但已经可以应用于实际优化问题。 Nelder…

量化存储墙(三):GEMM EMA 下限解析解以及硬件静态资源分配设计

Roofline 缺失的一角:EMA 计算-存储工艺各自单独演化发展步调不一, Memory Wall 在 AI 计算时代越来越显著[1]。Roofline Model 将计算/存储,软件/硬件用一个简洁优雅的统一模型概括,然而带入具体数值求解时,硬件…