组合数学——容斥原理和错位排列

本文深入浅出地介绍了组合数学中的核心原理,包括容斥原理及其加强版、德.摩根律、逐步淘汰原理等,并通过具体例题展示了如何运用这些原理解决实际问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

真的,学了组合数学你会克服公式恐惧症0.0深有体会……

容斥原理

A1,A2,,An为有限集合,用|Ai|表示集合Ai中的元素个数那么有这样的结论:

|A1A2An|=i=1n|Ai|1i<jn|AiAj|+1i<j<kn|AiAjAk|+(1)n1|A1A2An|.

(总的概括就是奇数个集合的并集累加和 减去 偶数个集合的并集累加和)

证明

aA1A2An,则a至少属于A1,A2,,An中一个集合。
不妨设a属于A1,A2,,Ak(1kn)而不属于其它集合。
于是a在1式左端计算了一次,而a在右端第一个和中算了C1k次,在第二个和中计算了C2k,…,可见,a在右端算式中它被计算的总次数是:

C1kC2k+C3k+(1)k1Ckk=1

顺带提一句,这种证明方式是“贡献法”

容斥原理加强版

这个加强版是博主和数学竞赛的小伙伴(ckh&yzc)一起讨论组合数学的时候搞出来的,欢迎大家来找出不严谨的地方!
加强版:原容斥原理针对的是集合中元素的个数,而我们拓宽到整个集合,加号改为∪号;而我们定义AB得到的集合就是把A中所有B的元素都去掉后的结果。
例如,若A={1,2,3,4,5}
B={1,2,4}
那么AB={3,5}

证明

以下的证明来自ckh(数学竞赛大佬%%%%%%%)
看不懂的同学在纸上画一画,就能看懂了。
S=ni=1Ai
Bi=CSAi(补集的意思)
S=ni=1Bi
再令Bi=S+Ci
所以|B1Bi|=|S|
C1C2Cn=ϕ
Ai=SSCi
所以ni=1Ai=SS(ni=1Ci)=SS
代入前面的设,得证。

德.摩根律

设P和Q都是S的子集。
则有:
CS(PQ)=(CSP)(CSQ)
CS(PQ)=(CSP)(CSQ)

逐步淘汰原理(筛法公式)

S是有限集合,Ai都包含于S(i1,2,,n)AiS中的补集为CSAi(i=1,2,,n)

|CSA1CSA2CSAn|=|S|i=1n|Ai|+1i<jn|AiAj|1<i<j<kn|AiAjAk|++(1)n|i=1nAi|

证明

因为|ni=1Ai|=|S||CS(ni=1)Ai|.
根据德.摩根律,我们有

CS(i=1nAi)=i=1nCSAi

再根据容斥原理就能得到逐步淘汰公式。

置换及其不动点

给定集合X={1,2,3,,n}φ是从X到X上的一一映射,通常记为:

φ={1         2         3         4         5φ(1)   φ(2)   φ(3)   φ(4)   φ(5)

则称φX上的置换,其中φ(i)是元素i在映射φ下的象。因为是一一映射,所以φ(1),φ(2),,φ(n)实际上是1,2,,n的一个排列。满足φ(i)=i的数i称为φ的一个不动点。

错位排列

在集合X={1,2,,n}上没有任何不动点的置换φ的个数是Dn=n!(111!+12!13!++(1)nn!)

例题3

φ是集合X={1,2,,n}上的置换,将X上没有不动点的置换个数记为fn,恰有一个不动点的置换个数记为gn,求证:|fngn|=1.(14届加拿大数学奥林匹克试题)

证明:

gn(i=1,2,,n)表示X上恰有唯一不动点i的置换个数。
于是

gn=gn1+gn2++gnn,

由上述推论,有
fn=Dn,gn=Dn1(i=1,2,3,,n),

gn=nDn1,

所以
|fngn|=|DnnDn1|=|n!(111!+12!+(1)nn!)|n×(n1)!(111!+12!+(1)n1(n1)!)=|n!×(1)nn!|=1

得证
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值