省选计划1.21

主题:容斥反演。

容斥

\(n\) 个集合的并集。

\[|\cup p_i|=\sum\limits_{S\in \{1,2,\dots,n\}} (-1)^{|S|-1}|\cap p_{S_i}| \]

\(S\) 不可为空

简单证明:

考虑一个元素出现在 \(p_{a_1},p_{a_2},\dots,p_{a_x}\),考虑其的贡献。为 \(\sum\limits_{S\in a}(-1)^{|S|-1}=\sum\limits_{i=1}^{x} (-1)^{i-1}\binom{x}{i}=1+\sum\limits_{i=0}^x (-1)^{i-1}\binom{x}{i}\)。根据二项式定理对其进行变形,\(1-\sum\limits_{i=0}^x(-1)^i\binom{x}{i}=1-(1-1)^x=1\)

有时候需要求集合的交集,令 \(\overline{A}\)\(A\) 的补集,则 \(\overline{\overline{A}}=A\)\(\overline{\cup\overline{p_i}}=\cap p_i\),令 \(Z\) 为全集,则 \(|\cap p_i|=|Z|-|\cup\overline{p_i}|\)

注意到在容斥式子中我们给出了 \(S\) 不可为空的限制,因为在大多数题目中,当 \(S\) 为空时可以直接求出 \(|Z|\)。如果可以,那么求交集时会有另一个式子:

\[|\cap p_i|=\sum\limits_{S\in\{1,2,\dots,n\}}(-1)^{|S|}|\cap\overline{p_{S_i}}| \]

\(S\) 可以为空

不定方程计数。对 \(\sum\limits x_i=S\)\(0\le x_i\le K\),对解计数,\(n,K\le 10^5\)

\(x_i>K\) 作为属性,求集合的并集,然后利用总方案数减去并集大小即可。注意所有方案均需满足 \(0\le x_i,\sum x_i=S\)。如果钦定了 \(i\) 个位置满足 \(x_i>K\),那么直接插板即可,给出答案:

\[\sum\limits_{i=0}^n(-1)^i\binom{n}{i}\binom{S-i(K+1)+n-1}{n-1} \]

给一张无标号图 \(G\) 和一张有标号树 \(T\),求有多少种给 \(G\) 标号的方式使得 \(T\)\(G\) 的一棵生成树,\(n\le 17\)

如果一开始就往容斥上想并不好做,考虑一个暴力的做法。

首先给图标号这种事情看上去无从下手,考虑先给图随便标一个号,然后统计有多少种映射合法。令 \(f_{i,j,S}\) 代表 \(T\) 上的 \(i\) 映射到了 \(j\)\(i\) 的子树内的映射到的集合是 \(S\) 的方案数。转移做子树合并。时间复杂度 \(O(n^33^n)\)

考虑复杂度的瓶颈在于状态中的集合 \(S\),其作用是为了避免重复,尝试用容斥去掉 \(S\) 这个限制。

\(g(S)\) 代表 \(T\) 中的所有点不必映射成 \(n\) 阶排列,而是只需映射到 \(S\) 这个集合中即可。那么答案就是 \(\sum\limits_{S}(-1)^{n-|S|}g(S)\),我们将映射后每个点是否被映射到视作属性,那么我们就是要求所有点都被映射到,\(g(S)\) 实际上同样等价于 \(\overline{S}\) 没被映射到的方案数,做容斥即可,这也解释了容斥系数中的 \((-1)^{n-|S|}\) 从何而来。

考虑如何求 \(g(S)\),我们枚举 \(S\),在做 dp 的过程中要求必须填 \(S\) 中的数即可。时间复杂度 \(O(n^32^n)\)

从暴力 dp 到正解中最关键的一步思考就是将映射成 \(n\) 阶排列这个条件变成所有 \(n\) 个点都被映射到

不妨考虑能否将 \(g\) 和答案的关系一般化。令 \(f(S)\) 代表映射到的集合恰好为 \(S\) 的方案数,\(g(S)\) 代表映射到的集合为 \(S\) 的子集的方案数,那么显然存在的关系是:

\[g(S)=\sum\limits_{T\in S}f(T) \]

而我们刚才得到了这样的一个式子:

\[f(S)=\sum\limits_{T\in S}(-1)^{|S|-|T|}g(T) \]

我们断言,任意对于某个集合的函数 \(f,g\),若第一条关系成立,则第二条关系也成立。给出粗略证明:

\[f(S)=\sum\limits_{T\in S}(-1)^{|S|-|T|}\sum\limits_{Q\in T}f(Q) \]

\[f(S)=\sum\limits_{Q\in S}f(Q)(\sum\limits_{T\in S/Q}(-1)^{|S/Q|-|T|}) \]

对于关于集合 \(P\) 的函数 \(F(P)=\sum\limits_{T\in P}(-1)^{|T|-|P|}\),存在 \(F(P)=0^{|P|}\)

证明
$$F(P)=\sum\limits_{i=0}^{|P|}\binom{|P|}{i}(-1)^{|P|-i}1^i=(1-1)^{|P|}=0^{|P|}$$

所以 \(f(S)=\sum\limits_{Q\in S}f(Q)\times F(S/Q)=f(S)\)

实际上,这是子集反演的一种形式。当我们将 \(g\) 看作至多,\(f\) 看作恰好时,这个式子会起很大的作用。

思考

容斥可以对于一些限制,将恰好转变成至少来放宽一些条件,以及后面反演中将涉及的 \(\min\)\(\max\) 的转化。


凑容斥系数

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

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

相关文章

人工智能创新型教师培育计划(第一期)

Skip to contentOpenHydraSearchKMain Navigation首页 课程新一代人工智能经典实验【中学】 XEdu系列【中学】 中小学AI开源课程倡议使用指南活动获取支持On this page人工智能创新型教师培育计划(第一期) 一、组织单位 二、活动背景 三、活动内容 四、活动安排 五、师资介绍…

前置数学

一些必要 trick推式子,先提 \(\sum\) 和 \(\Pi\) 到最前面,然后从后往前合并,必要时考虑更改 \(\sum\) 的取值 看到次方变为斯特林数,\(x^n=\sum\limits_{i=0}^{n} {n \brace i}{x \choose i}i!=\sum\limits_{i=0}^{n}\sum\limits_{i=1}^m{(-1)^{m-i}\frac{i^n}{(m-i)!}}{x…

MUX-VLAN

MUX VLAN(Multiplex VLAN)是一种高级的VLAN技术,它通过在交换机上实现二层流量隔离和灵活的网络资源控制,提供了一种更为细致的网络管理方式。 一、基本概念 MUX VLAN分为主VLAN(Principal VLAN)和多个子VLAN(Subordinate VLAN)。 主VLAN是MUX VLAN配置中的核心VLAN,它…

OpenWrt 挂载 SMB

通过OpenWrt挂载smb存储,并再通过smb分享(实现分布分享统一入口?)添加用户 依赖 opkg install shadow-common opkg install shadow-useradd添加 smb 专用用户 useradd YOUR_SMB_USER_NAME将用户与 smb 服务关联 smbpasswd -a YOUR_SMB_USER_NAMEOpenWrt 设置 挂载 SMB 网络共…

高效批量工作流导入及脚本上线,利用DolphinScheduler接口轻松实现

实现了批量生成DolphinScheduler的任务,当导入时发现只能逐个导入,因此通过接口实现会更方便。 DolphinScheduler接口文档 DolphinScheduler是有接口文档的,地址是 http://IP:12345/dolphinscheduler/swagger-ui/index.html?language=zh_CN&lang=cn不过这文档写的比较简…

IDEA如何打开每日提示?

前言 大家好,我是小徐啊。我们在使用IDEA开发Java应用的时候,经常需要使用IDEA的各种各样的技巧,提示。这个在每次IDEA打开的时候,会自动弹出来。但有时候,我们可能不小心把这个提示设置成关闭了,导致后面打开IDEA的时候,再也不弹出这个提示了。这样我们可能就不能很全面…

如何用vscode打开obj、glb文件,查看3D文件

方案1:安装插件 3D Viewer for VSCode,安装完可以查看obj 但是不懂为啥是白色的 glTF Tools,安装完可以查看gltf 启动位置在右上角:白色小山的图标 这个效果不错,看起来比较舒服。 但是gltf从哪里来呢? 首先我们有一个glb文件,右键它,点击倒数第二行的“glTF: import …

时间序列平稳性的双重假设检验:KPSS与ADF方法比较研究

在进行时间序列分析之前,确定序列的平稳性是一个关键步骤。平稳性指的是时间序列的统计特性(如均值和方差)在时间维度上保持不变。本文将详细介绍如何运用 KPSS 检验和 Dickey-Fuller 检验来验证序列的平稳性。这两种检验方法基于不同的统计假设:KPSS 检验的原假设是数据非…

Svelte 最新中文文档翻译(4)—— 符文(Runes)下

前言 Svelte,一个非常“有趣”、用起来“很爽”的前端框架。从 Svelte 诞生之初,就备受开发者的喜爱,根据统计,从 2019 年到 2024 年,连续 6 年一直是开发者最感兴趣的前端框架 No.1:Svelte 以其独特的编译时优化机制著称,具有轻量级、高性能、易上手等特性,非常适合构…

固定测斜探头 土体位移变化数据支持 助力工程监测 无线传输

固定测斜探头 土体位移变化数据支持 助力工程监测 无线传输FI系列固定测斜探头是一款专为土体内部位移变化监测而设计的高精度测量仪器。无论是深基坑开挖、地铁地基、公路地基、挡土墙、坝体、尾矿库还是山体滑坡等工程项目,我们的测斜探头都能提供准确可靠的数据支持。该测斜…

研发效率低下?试试这些改进方法

最近这段时间,互联网上发生了很多大事:极越汽车突然宣布破产解散;养乐多上海工厂关闭;网传海信大规模裁员;……2024年即将结束,如果给2024年打个标签,有人说是“愈加魔幻”的一年,有人说是“挑战激增”的一年,也有人说是“生存指数飙升”的一年。 根据裁员追踪机构lay…

复现一下最近的湘岚杯的pwn部分

前言 pwn萌新一枚,这次湘岚杯pwn题只出了两道,后面orw写了exp但是一直打不通,后来发现思路错了。宇宙射线这题很新颖,虽然比赛期间没有做出来,但是赛后复现时学到了很多东西,还是很开兴的。题解过程 ret2text签到 解题思路: ​ 这题是pwn题中的签到题,题目描述也很清晰…