有9个人,每三个人中至少有两个互相认识,求证这里面至少有4个人互相认识

PKU官方题解:

引理:二染色K6中一定有同色K3。
证明:考虑某一个点,它一定连出至少三条同色边(不妨设为红边),这三条边连的三个点之间的连边,如果存在红色边,那么有红色K3,如果不存在红色边,那么这三个点构成蓝色K3。
下证:二染色K9(下称为G)中的一个点,最多连出三条蓝色边:
如果存在某一个点,连出了至少4条蓝色边,考虑这四条边连的四个点之间的连边,如果存在蓝色边,那么有蓝色K3,否则有红色K4,命题得证。
于是对于G中的每一个点,最少连出5条红色边,但是如果每一个点都连出5条红色边的话,红边的总数是9*5/2=22.5不是整数。
所以存在至少一个点(下称点v),连出至少6条红色边。
考虑这六条边连的六个点之间的连边,有引理可得,这六个点里一定存在同色K3
情况1:存在蓝色K3,命题得证
情况2:存在红色K3,这三个红色点加上v构成了红色K4,命题得证

看完上面这个,我是:

下面说一下我的证明吧QAQ应该比上面的好懂

证明:


我们把每个人想象成一个节点,然后每个人之间都连一条边,构成一个有$\frac{9×8}{2}$条边的无向图。然后我们给所有边进行红黑染色,红色边代表连接的两个人互相认识,黑色边则代表不认识。那么原来的结论就等价于图中必然存在四个点,四个点之间的红色边能构成一个红色四边形,且这个图满足下面的引理1。

弱弱的引理1:

每三个人中至少有两个互相认识$\Longleftrightarrow$每三个人的关系中不存在三个人都互不认识的情况
每三个人的关系中不存在三个人都互不认识的情况$\Longleftrightarrow$无向图中不存在三个点间的三条边都为黑色
无向图中不存在三个点间的三条边都为黑色$\Longleftrightarrow$图中不存在黑色三角形

我们只要证明这个蓝色结论就可以啦~


对于任意一个点,连接这个点的边有8条,且边的颜色只能是红色或黑色。由鸽巢原理得(其实下面要说的谁都懂,但是我就要说一个看起来比较高大上的名字):在这8条边中一定存在一种颜色的边数≥4(这不是废话吗)。

然后就可以分情况讨论啦:

1.存在一个点,这个点连接的所有边中黑色边数≥4

2.不存在这样的点,这个点连接的所有边中黑色边数≥4;及所有点连接的黑色边数都≤3;也就是说所有点连接的红色边数都≥5

1和2两种情况的并集是全部情况,所以我们只要依次证明情况1和情况2是蓝色结论的充分条件就行啦~

情况1下的证明:


  我们随意选一个点,满足条件这个点连接的所有边中黑色边数≥4,给它编号为1。因为它连接的8条边中黑色边数≥4,任选与1相连的4条黑边,给这4条黑边连接的点一次编号为2、3、4、5。因为1和2、3、4、5的连边都是黑色,由引理1得图中不能存在黑色三角形,及2和3、3和4、4和5、5和2······这些点间的连边不能为黑色,也就是说2和3、3和4、4和5、5和2······这些点之间都是红色边,这样恰好构成了一个红色四边形。由此可得情况1是蓝色结论的充分条件。

情况2下的证明:


  因为所有点连接的红边数都≥5,那么假设所有点连接的红边数都等于5,这样图中$红边总数=\frac{9×5}{2}$,地球人都知道这是除不开的,那么由鸽巢原理得again:一定存在一个点连接的红边数≥6(很显然吧,鸽巢原理在平均数上的变形详见《组合数学》)。那么我们对一个连接红边数≥6的点编号为1,对它的红边连接的点中选6个依次编号为2、3、4、5、6、7。我们设集合S={2,3,4,5,6,7},1与集合S中的点的连边可以想象成红色四边形中的两条红边,剩下的两条红边在集合S的点之间。对于3这个点,在情况2下它连接的红边数≥5,又因为不属于集合S的点为1,8,9,所以再次由鸽巢原理得:3与集合S中其它点的连边中红色边数≥2(还是很显然啊,毕竟这是最朴素的鸽巢原理)。设点a,b∈S且a,b≠3,且a,b与3的连边为红边。这样的话1与a,a与3,3与b,b与1之间的连边都为红边,构成了一个红色四边形。由此可得情况2是蓝色结论的充分条件。


综上,图中必然存在四个点,四个点之间的红色边能构成一个红色四边形,且这个图满足引理1$\Longrightarrow$有9个人,每三个人中至少有两个互相认识,这里面至少有4个人互相认识。

证毕

【PKUSC 2015】的一道数学题的更多相关文章

  1. 【PKUSC 2015的一道数学题】

    有9个人,每三个人中至少有两个互相认识,求证这里面至少有4个人互相认识 PKU官方题解: 引理:二染色K6中一定有同色K3. 证明:考虑某一个点,它一定连出至少三条同色边(不妨设为红边),这三条边连的 ...

  2. 从一道数学题弹程序员的思维:数学题,求证:(a+b%c)%c=(a+b)%c

    在学校论坛看到这道题目,全忘了的感觉. 如果你是高中的,那我觉得你完全没问题.但是,在这个博客园的圈子,觉得全部人都是程(ban)序(zhuan)员(gong)相关的人员,解决这个问题有点难度,毕竟, ...

  3. 一道数学题 hduacm 5144

    题目大意:  一直初速度v和抛出速度h  求标枪抛出的最远距离: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5144 显然  d=v/g*sqrt( ...

  4. POJ-Crazy tea party,很好的一道数学题~~~

    Crazy tea party Time Limit: 1000MS   Memory Limit: 10000K        Description n participants of <& ...

  5. 2015年校园招聘12家IT公司面试体验

    背景 2015年注定是一个不平凡的年头,作为一个应届毕业生,我也算是经历了工作上的大起大落.下面我先简单讲述一下自己的遭遇,然后根据自己亲身的面试经历,从一个学生的角度去谈谈自己对面试过的公司的一些看 ...

  6. Luogu P3768 简单的数学题

    非常恶心的一道数学题,推式子推到吐血. 光是\(\gcd\)求和我还是会的,但是多了个\(ij\)是什么鬼东西. \[\sum_{i=1}^n\sum_{j=1}^nij\gcd(i,j)=\sum_ ...

  7. hdu 2086 A1 = ?(数学题)

    转载链接 因为:Ai=(Ai-1+Ai+1)/2 - Ci,        A1=(A0  +A2  )/2 - C1;       A2=(A1  +  A3)/2 - C2 , ... => ...

  8. 【BZOJ1965】[AHOI2005] SHUFFLE 洗牌(数学题)

    点此看题面 大致题意: 有一叠扑克牌编号为\(1\sim n\)(\(n\)为偶数),每次洗牌将扑克牌平均分成上下两叠,取下面一叠的第一张作为新的一叠的第一张,然后取上面一叠的第一张作为新的一叠的第二 ...

  9. JZOJ 5773. 【NOIP2008模拟】简单数学题

    5773. [NOIP2008模拟]简单数学题 (File IO): input:math.in output:math.out Time Limits: 1000 ms  Memory Limits ...

随机推荐

  1. [SDOI2010]星际竞速——费用流

    类似于最短路的网络流,而且还要保证每个点经过一次,拆点就比较方便了. 连边怎么连?要保证最大流是n(每个点经过一次)还要能从直接跳转 将每个点拆点.源点向每个点的入点连一条容量为1费用为0的边.源点向 ...

  2. 【BZOJ 3165】 [Heoi2013]Segment 李超线段树

    所谓李超线段树就是解决此题一类的问题(线段覆盖查询点最大(小)),把原本计算几何的题目变成了简单的线段树,巧妙地结合了线段树的标记永久化与标记下传,在不考虑精度误差的影响下,打法应该是这样的. #in ...

  3. POJ1984:Navigation Nightmare(带权并查集)

    Navigation Nightmare Time Limit: 2000MS   Memory Limit: 30000K Total Submissions: 7871   Accepted: 2 ...

  4. HDU1166 敌兵布阵(树状数组实现

    敌兵布阵 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  5. [Usaco2015 dec]Max Flow 树上差分

    [Usaco2015 dec]Max Flow Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 353  Solved: 236[Submit][Sta ...

  6. socket编程 ------ 建立 TCP 服务器和客户端流程(阻塞方式)

    服务器端: 服务器端先创建一个socket,然后把这个socket绑定到端口上,接着让它向tcp/ip协议栈请求一个监听服务并创建一个accept队列来接受客户端请求. void creat_tcpS ...

  7. java 身份证15位转18位

    /** * 根据身份证号获取性别 * * @param pid * 身份证号 * @return 性别 F为女M为男 */ public static String getSexByPid(Strin ...

  8. Linux引导过程

    早期时,启动一台计算机意味着要给计算机喂一条包含引导程序的纸带,或者手工使用前端面板地址/数据/控制开关来加载引导程序.尽管目前的计算机已经装备了很多工具来简化引导过程,但是这一切并没有对整个过程进行 ...

  9. Flume的安装,配置及使用

    1,上传jar包 2,解压 3,改名 4,更改配置文件 将template文件重镜像 root@Ubuntu-1:/usr/local/apache-flume/conf# cat flume-env ...

  10. DDD——让天下没有难调的程序

    https://www.linuxidc.com/Linux/2016-11/137343.htm DDD全称Data Display Debugger,当我第一次见到它时,它的界面着实让我吃了一惊, ...