组合数学课程笔记(四):容斥原理
容斥原理
是容斥原理的基本公式。
但是我们并不经常的使用这个公式本身,我们一般使用这个公式的推论:
具体的理解这个式子,就是在全集
容斥原理的证明
使用集合论和数学归纳法,是容易证明的。但是如果从概率的角度来说,我们就有更好的方法证明它。
我们设事件
然后,又有对于两个随机事件
同时,
也就等于
回代公式
然后对两边取期望,指示随机变量的期望就是该事件的概率
两边约去
容斥原理和集合划分
我们知道集合划分是斯特林数,等价于满射个数问题,那么我们就来尝试数满射个数。
我们可以设
然后我们就可以直接容斥得到答案
然后斯特林数是不考虑顺序的满射个数,也就是要除以
容斥原理的优势和劣势
容斥原理的优势在于,我们只需要数“至少有
但是,容斥原理的公式形式决定了我们很难得到没有
错排问题
错排问题可以表述成满足
我们记
我们发现,
生成函数和容斥原理
我们可以设
然后我们要求的答案就是
我们就用生成函数在不同的含义和相似的形式下求出了错排数。
法兰西晚宴
对于一个圆环,安排
我们可以先把
我们把这个排列问题映射成棋盘,也就是所有打
然后我们发现,我们就只要求出至少
然后,我们发现所有不能选的点构成一个长度
首先,我们可以算在长度
然后,我们发现,如果把环上没有选取的位置断开一个得到的结果,和在链上的某个位置插入一个未选择的位置是相同的。那么就有
解出
然后
也就得到答案为
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现