《组合数学》第五版学习笔记(第三章)

本文介绍了鸽巢原理,包括简单形式和加强版,给出多个应用实例,如证明连续若干天大师下棋数量、所选整数整除关系等。还阐述了Ramsey定理,证明了Ramsey数的存在性及相关不等式,并配有练习题,帮助理解鸽巢原理和Ramsey定理的应用。

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

第三章 鸽巢原理

3.1 鸽巢原理:简单形式

定理 3.1.1 如果要把n+1n+1n+1个物体放进nnn个盒子,那么至少有一个盒子包含两个或者更多的物体。

应用 3 给定mmm个整数a1,a2,⋯ ,ama_1,a_2,\cdots,a_ma1,a2,,am,存在满足0⩽k<l⩽m0\leqslant k <l\leqslant m0k<lm的整数kkklll,使得ak+1,ak+2,⋯ ,ala_{k+1},a_{k+2},\cdots,a_lak+1,ak+2,,al能被mmm整除。

应用 4 一位国际象棋大师有11周的时间备战一场锦标赛,他决定每天至少下一盘棋,但为了不使自己过于疲劳他还决定每周不能下超过12盘棋。证明存在连续若干天,期间这位大师恰好下了21盘棋。
证明a1a_1a1是在第一天下的盘数,a2a_2a2是在第一天和第二天下的总盘数,而a3a_3a3是在第一天、第二天和第三天所下的总盘数,以此类推。因为每天至少要下一盘棋,故数列a1,a2,⋯ ,a77a_1,a_2,\cdots,a_{77}a1,a2,,a77是一个严格递增序列。此外,a1⩾1a_1\geqslant1a11,而且因为在任意一周下棋最多是12盘,所以a77⩽12⋅11=132a_{77}\leqslant12\cdot11=132a771211=132。因此,我们有
1⩽a1<a2<⋯<a77⩽1321\leqslant a_1<a_2<\cdots<a_{77}\leqslant 1321a1<a2<<a77132序列a1+21,a2+21,⋯ ,a77+21a_1+21,a_2+21,\cdots,a_{77}+21a1+21,a2+21,,a77+21也是一个严格递增序列:
22⩽a1+21<a2+21<⋯<a77+21⩽132+21=15322\leqslant a_1+21<a_2+21<\cdots<a_{77}+21\leqslant 132+21 = 15322a1+21<a2+21<<a77+21132+21=153于是,这154个数
a1.a2,⋯ ,a77,a1+21,a2+21,⋯ ,a77+21a_1.a_2,\cdots,a_{77},a_1+21,a_2+21,\cdots,a_{77}+21a1.a2,,a77,a1+21,a2+21,,a77+21中的每一个数都是1到153之间的整数。由此可知,他们中间有两个是相等的。又因为a1,a2,⋯ ,a77a_1,a_2,\cdots,a_{77}a1,a2,,a77中没有相等的数,并且a1+21,a2+21,⋯ ,a77+21a_1+21,a_2+21,\cdots,a_{77}+21a1+21,a2+21,,a77+21中也没有两个相等的数,因此必然存在一个iii和一个jjj使得ai=aj+21a_i=a_j+21ai=aj+21。从而这位国际象棋大师在第j+1,j+2,⋯ ,ij+1,j+2,\cdots,ij+1,j+2,,i天总共下了21盘棋。

应用 5 从整数1,2,⋯ ,2001,2,\cdots,2001,2,,200中选出101个数。证明:在所选的这些整数之间存在两个这样的整数,其中一个可被另一个整除。
证明 任意一个整数都可以写成a⋅2ka\cdot 2^ka2k的形式,其中k⩾0k\geqslant 0k0aaa是奇数。对于1和200之间的一个整数,aaa是100个数1,3,5,⋯ ,1991,3,5,\cdots,1991,3,5,,199中的一个,因此在所选的101个整数中存在两个整数,当写成上述形式时这两个数具有相同的aaa值。假设这两个数是a⋅2ra\cdot2^ra2ra⋅2sa\cdot2^sa2s。如果r<sr<sr<s那么第二个数能被第一个数整除,否则第一个数能被第二个数整除。

应用 6 (中国剩余定理)mmmnnn是互素的正整数,并设aaabbb为整数,其中0⩽a⩽m−10\leqslant a\leqslant m-10am1以及0⩽b⩽n−10\leqslant b\leqslant n-10bn1。于是,存在正整数xxx,使得x≡a(mod  m)x\equiv a(\text{mod}\;m )xa(modm)x≡b(mod  n)x\equiv b(\text{mod}\;n)xb(modn)
证明 考虑nnn个整数
a,a+m,a+2m,⋯ ,a+(n−1)ma,a+m,a+2m,\cdots,a+(n-1)ma,a+m,a+2m,,a+(n1)m它们模mmm都余aaa,又由数论常识它们通过nnn的完全剩余系,故其中必有一个模nnnbbb

3.2 鸽巢原理:加强版

定理 3.2.1q1,q2,⋯ ,qnq_1,q_2,\cdots,q_nq1,q2,,qn是正整数。如果将
q1+q2+⋯+qn−n+1q_1+q_2+\cdots+q_n-n+1q1+q2++qnn+1个物体放入nnn个盒子内,那么或者第一个盒子至少含有q1q_1q1个物体,或者第二个盒子至少含有q2q_2q2个物体,…,或者第nnn个盒子至少含有qnq_nqn个物体。

推论 3.2.2nnnrrr都是正整数。如果把n(r−1)+1n(r-1)+1n(r1)+1个物体中的每一个物体分配到nnn个盒子中,那么至少有一个盒子含有rrr个或者更多的物体。

应用 8 有两个碟子,其中一个比另一个小,它们都被分成200个均等的扇形。在大碟子中任选100个扇形并着成红色;其余100个扇形着成蓝色。在小碟子中,每一个扇形或者着成红色或者着成蓝色,所有红色扇形和蓝色扇形的数目没有限制。然后将小碟子放到大碟子上使两个碟子的中心重合。证明:能够将两个碟子的扇形对齐使得小碟子和大碟子上相同颜色重合扇形的数目至少是100个。
证明 小碟子在旋转一周的过程中,上面的每一个小扇形被大碟子上颜色相同的扇形重合100次,所以旋转一周后所有颜色相同扇形重合的总次数为100⋅200=20000100\cdot 200=20000100200=20000次,而小碟子旋转一周中有200个不同的与大碟子扇形重合的位置,所以所有位置的重合的相同颜色扇形的平均数为20000/200=10020000/200=10020000/200=100个,所以至少有一个位置,它的重合的相同颜色的扇形的个数大于等于100个。

应用 9 证明每个由n2+1n^2+1n2+1个实数构成的序列a1,a2,⋯ ,an2+1a_1,a_2,\cdots,a_{n^2+1}a1,a2,,an2+1或者含有长度为n+1n+1n+1的递增子序列,或者含有长度为n+1n+1n+1的递减子序列。
证明 假设不存在长度为n+1n+1n+1的递增子序列,证明必然存在长度为n+1n+1n+1的递减子序列。对于每一个k=1,2,⋯ ,n2+1k=1,2,\cdots,n^2+1k=1,2,,n2+1,设mkm_kmk为从aka_kak开始的最长递增子序列的长度,假设对于每一个k=1,2,⋯ ,n2+1k=1,2,\cdots,n^2+1k=1,2,,n2+1,有mk⩽nm_k\leqslant nmkn,使得不存在长度为n+1n+1n+1的递增子序列。因为对于每个k=1,2,⋯ ,n2+1k=1,2,\cdots,n^2+1k=1,2,,n2+1,都有mk⩾1m_k\geqslant 1mk1成立,所以m1,m2,⋯ ,mn2+1m_1,m_2,\cdots,m_{n^2+1}m1,m2,,mn2+1是1和n之间的n2+1n^2+1n2+1个整数。由鸽巢原理的加强版可知m1,m2,⋯ ,mn2+1m_1,m_2,\cdots,m_{n^2+1}m1,m2,,mn2+1中有n+1n+1n+1个是相等的。令
mk1=mk2=⋯=mkn+1m_{k_1}=m_{k_2}=\cdots=m_{k_n+1}mk1=mk2==mkn+1其中1⩽k1<k2<⋯<kn+1⩽n2+11\leqslant k_1<k_2<\cdots<k_{n+1}\leqslant n^2+11k1<k2<<kn+1n2+1。假设对于某个i=1,2,⋯ ,ni=1,2,\cdots,ni=1,2,,n,有aki<aki+1a_{k_i}<a_{k_{i+1}}aki<aki+1,那么,由于ki<ki+1k_{i}<k_{i+1}ki<ki+1,我们可以做成一个从aki+1a_{k_{i+1}}aki+1开始的最长的递增子序列,并将akia_{k_i}aki放在前面而得到一个从akia_{k_i}aki开始的递增子序列。由于这意味着mki>mki+1m_{k_i}>m_{k_{i+1}}mki>mki+1,因此我们得出aki⩾aki+1a_{k_i}\geqslant a_{k_{i+1}}akiaki+1的结论。由于这对于每一个i=1,2,⋯ ,ni=1,2,\cdots,ni=1,2,,n均成立,因此我们有
ak1⩾ak2⩾⋯⩾akn+1a_{k_1}\geqslant a_{k_{2}}\geqslant \cdots \geqslant a_{k_{n+1}}ak1ak2akn+1从而得出ak1,ak2,⋯ ,akn+1a_{k_1},a_{k_2},\cdots,a_{k_{n+1}}ak1,ak2,,akn+1是一个长度为n+1n+1n+1的递减子序列。

3.3 Ramsey定理

定理 3.3.1 如果m⩾2m\geqslant 2m2n⩾2n\geqslant 2n2是两个整数,则存在正整数ppp,使得
Kp→Km,KnK_p \rightarrow K_m,K_nKpKm,Kn
通过交换红色和蓝色,我们看到r(m,n)=r(n,m)r(m,n)=r(n,m)r(m,n)=r(n,m).
很容易确定Ramsey数r(2,n)r(2,n)r(2,n)r(m,2)r(m,2)r(m,2),下面证明r(2,n)=nr(2,n)=nr(2,n)=n.
r(2,n)⩽nr(2,n)\leqslant nr(2,n)n:事实上,如果把KnK_nKn的边或者着成红色或者着成蓝色,那么或者KnK_nKn的某条边是红色的(因此就得到一个红K2K_2K2),或者KnK_nKn所有边都是蓝色的(因此就得到一个蓝KnK_nKn)。
r(2,n)>n−1r(2,n)>n-1r(2,n)>n1:事实上,如果把KnK_nKn的边都着成蓝色,那么我们记得不到红K2K_2K2,也得不到蓝KnK_nKn
同样的方法可以证明r(m,2)=mr(m,2)=mr(m,2)=m

定理 3.3.1 的证明 我们对两个参数m⩾2m\geqslant 2m2n⩾2n\geqslant 2n2利用双重归纳法证明r(m,n)r(m,n)r(m,n)的存在性。如果m=2m=2m=2我们知道r(2,n)=nr(2,n)=nr(2,n)=n,且如果n=2n=2n=2,则r(m,2)=mr(m,2)=mr(m,2)=m。现在假设m⩾3m\geqslant 3m3n⩾3n\geqslant 3n3,并取归纳假设为r(m−1,n)r(m-1,n)r(m1,n)r(m,n−1)r(m,n-1)r(m,n1)存在。设p=r(m−1,n)+r(m,n−1)p=r(m-1,n)+r(m,n-1)p=r(m1,n)+r(m,n1)。下面要证明对于这个整数pppKp→Km,KnK_p\rightarrow K_m,K_nKpKm,Kn.
假设KpK_pKp的边已经用某种方式着成了红色或者蓝色,考虑KpK_pKp的一个点xxx。设RxR_xRx是通过红边与xxx相连的点的集合,而BxB_xBx是通过蓝边与点xxx相连的点的集合。于是
∣Rx∣+∣Bx∣=p−1=r(m−1,n)+r(m,n−1)−1|R_x|+|B_x|=p-1=r(m-1,n)+r(m,n-1)-1Rx+Bx=p1=r(m1,n)+r(m,n1)1这表明或者∣Rx∣⩾r(m−1,n)|R_x|\geqslant r(m-1,n)Rxr(m1,n),或者∣Bx∣⩾r(m,n−1)|B_x|\geqslant r(m,n-1)Bxr(m,n1).
假设前者成立。设q=∣Rx∣q=|R_x|q=Rx满足q⩾r(m−1,n)q\geqslant r(m-1,n)qr(m1,n)。考虑由RxR_xRx的点组成的KqK_qKq,我们看到或者KqK_qKq中或者存在一个红Km−1K_{m-1}Km1,或者存在一个蓝KnK_nKn。如果第二种可能性成立,那么就完成了证明,因为已经有了蓝KnK_nKn,否则,存在一个红Km−1K_{m-1}Km1,将点xxx加入其中,因为连接xxxRxR_xRx的边都是红色的,所以就得到了一个红KmK_mKm,也完成了证明。
如果后者成立,我们也可以进行类似的证明。通过归纳法可以得出结论,对于所有的整数m,n⩾2m,n\geqslant 2m,n2,数r(n,m)r(n,m)r(n,m)存在。

定理3.3.1的证明不仅证明了RamseyRamseyRamseyr(m,n)r(m,n)r(m,n)存在,而且还证明了他们满足不等式
r(m,n)⩽r(m−1,n)+r(m,n−1)(m,n⩾3)r(m,n)\leqslant r(m-1,n)+r(m,n-1)\quad (m,n\geqslant 3)r(m,n)r(m1,n)+r(m,n1)(m,n3)
f(m,n)=(m+n−2m−1)(m,n⩾2)f(m,n) = {{m+n-2}\choose {m-1}}\quad (m,n\geqslant 2)f(m,n)=(m1m+n2)(m,n2)于是,利用帕斯卡公式,我们得到
(m+n−2m−1)=(m+n−3m−1)+(m+n−3m−2){{m+n-2}\choose{m-1}}={{m+n-3}\choose{m-1}}+{{m+n-3}\choose{m-2}}(m1m+n2)=(m1m+n3)+(m2m+n3)因此有
f(m,n)=f(m−1,n)+f(m,n−1)(m,n⩾3)f(m,n)=f(m-1,n)+f(m,n-1)\quad (m,n\geqslant 3)f(m,n)=f(m1,n)+f(m,n1)(m,n3)于是我们得出Ramsey数满足
r(m,n)⩽(m+n−2m−1)=(m+n−2n−1)r(m,n)\leqslant {{m+n-2}\choose {m-1}}={{m+n-2}\choose{n-1}}r(m,n)(m1m+n2)=(n1m+n2)

3.4 练习题

4.将原集合分为{1,2},{3,4},⋯ ,{2n−1,2n}\{1,2\},\{3,4\},\cdots,\{2n-1,2n\}{1,2},{3,4},,{2n1,2n}nnn个集合,从中选出n+1n+1n+1个元素,由鸽巢原理知,必有两个数落在同一个集合内,他们之间相差1.

11.设xix_ixi为前iii天总共学习的小时数,i=1,2,⋯ ,37i=1,2,\cdots,37i=1,2,,37,有
1⩽x1<x2<⋯<x37⩽601\leqslant x_1<x_2<\cdots<x_{37}\leqslant 601x1<x2<<x3760
x1+13<x2+13<⋯<x37+13⩽73x_1+13<x_2+13<\cdots<x_{37}+13\leqslant 73x1+13<x2+13<<x37+1373∴x1,x2,⋯ ,x37,x1+13,x2+13,⋯ ,x37+13\therefore x_1,x_2,\cdots,x_{37},x_1+13,x_2+13,\cdots,x_{37}+13x1,x2,,x37,x1+13,x2+13,,x37+13是取值在1到73之间的74个整数,由鸽巢原理知,其中必有两个数相等,因为x1,x2,⋯ ,x37x_1,x_2,\cdots,x_{37}x1,x2,,x37是严格递增数列,x1+13,x2+13,⋯ ,x37+13x_1+13,x_2+13,\cdots,x_{37}+13x1+13,x2+13,,x37+13也是严格递增数列,所以这两个相同的数必定一个来自前者,另一个来自后者,设xi=xj+13x_i=x_j+13xi=xj+13,其中1⩽j<i⩽371\leqslant j<i\leqslant 371j<i37,从而xi−xj=13x_i-x_j=13xixj=13,即从第jjj天到第iii天她学习了13个小时。

13.因为K6→K3,K3K_6\rightarrow K_3,K_3K6K3,K3,即K6K_6K6中已经存在一个同色三角形,设其为红色,如图:

假设不存在第二个红K3K_3K3或蓝K3K_3K3,考察点D,从D出发有5条线段连接到其余5个点,由鸽巢原理知其中至少有三条线段同色。

若这三条线段同为红色,设这三条线段连接的三个顶点为R3R_3R3,若R3R_3R3中有两个点间的边是红边,加入D点就得到了一个新的红K3K_3K3,否则R3R_3R3中全是蓝边,就得到了一个蓝K3K_3K3。因此为了不产生新的红/蓝K3K_3K3,三条同色线段只能同为蓝色。

如果三条蓝色线段没有连在A,B,C上,则必将产生一个新的红K3K_3K3,如图:

其中AFC构成了新的红K3K_3K3

同理,点E、F出发至少有三条蓝色线段,且连接到A,B,C点,否则就会出现新的红K3K_3K3或蓝K3K_3K3。连接上这些蓝边,如图:

此时,如果DF,DE,FE任意一条边是蓝色,就会与已有边构成蓝色三角形,如果全为红色,DEF就形成了一个红K3K_3K3,逼出第二个同色三角形如图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值