《Mathematical Olympiad——组合数学》——抽屉原理
抽屉原理可以说是组合数学中最简单易懂的一个原理了,其最简单最原始的一个表达形式:对于n本书放到n-1个抽屉中,保证每个抽屉都要有书,则必存在一个抽屉中有2本书。但是这个简单的原理在很多问题中都能够巧妙的应用到,融合将问题一步步抽象转化来接近抽屉原理的原始模型,是用好抽屉原理的关键。
问题一:两个半径相等的圆盘上各有一个内接正2n边形,每个正2n边形的顶点有一半染上黄色,一般染上蓝色,将这一个圆盘放在另一个圆盘上并使得两个正2n边形的顶点均重合,这样得到2n对顶点,如果一对顶点中两个重合的顶点颜色相同,则称其为“匹配点对”。证明:存在一种放置方式,使得至少有n对匹配点对。
证明:我们首先从任意一种重合方式开始,用a1表示当前方式含有的匹配点对的个数,然后我们将其中一个圆盘旋转2n - 1次,每次旋转的角度π/n,这样我们便得到了多有的放置方法——{a1,a2,a3……a(2n)}。考察所有情况匹配点对的总和,利用简单的计数原理,我们得到等式:a1 + a2 + a3+……+a(2n) = 2n*n,由此再利用抽屉原理,得证。
问题二:正整数1~200分成50个集合。证明:可以从其中某一个集合中找出三个数,它们形成三角形的三边之长。
证明:我们考虑100~200这101个数字,分到50个集合当中,必然存在3个数字分到某个集合当中,考察分布在[100,200]的整数,任取三个数都是满足三角形三边定理的,得证。
问题三:一次射箭比赛共有30名选手参加。将靶子分为两个区域,规定:射中区域一得10分,射中区域二得5分,未射中靶子不得分,每名选手射16箭。比赛结束后,统计显示射中区域二的箭超过50%,射中区域一和未射中靶子的箭数相同。证明:有两名选手得分相同。
证明:我们设第i个人射中区域一、区域二、未射中的箭数分别是ai、bi、ci.则首先有∑ai = ∑ci < 16*30 /4 = 120.
第i个选手的得分可以这样表示:10ai + 5bi = 5ai + 5(ai + bi) = 5ai + 5(16 - ci) = 80 + 5(ai - ci)。
现在考虑反证法,假设30个选手的分数各不相同,则ai - ci有30个各不相同的取值。考虑到ai - ci∈[-16 , 16],由抽屉原理得,存在满足ai-ci>0或ai - ci < 0的组数大于等于15的情况,我们以ai - ci > 0为例,我们将ai - ci按照严格递增的顺序排列,则有ai - ci >=i , 所以ai >= i.
因此,对于满足ai - ci > 0的ai,有不等式∑ai >= 1 + 2 + 3+……+15 = 120成立,这与已知事实矛盾,因此假设不成立。
证毕。
证明:
《Mathematical Olympiad——组合数学》——抽屉原理的更多相关文章
- 《Mathematical Olympiad——组合数学》——染色问题
恢复 继续关于<Mathematical Olympiad——组合数学>中问题的分析,这一篇文章将介绍有关染色的问题. 问题一: 将一些石头放入10行14列的矩形方格表内,允许在每个单元 ...
- 2021.12.06 P1450 [HAOI2008]硬币购物(组合数学+抽屉原理+DP)
2021.12.06 P1450 [HAOI2008]硬币购物(组合数学+抽屉原理+DP) https://www.luogu.com.cn/problem/P1450 题意: 共有 44 种硬币.面 ...
- 《Mathematical Olympiad——组合数学》——操作和游戏
这篇文章,我们开始对奥数中有关操作和游戏的问题进行分析和讨论,其实在信息学竞赛中涉及到的一些博弈问题(分析必胜策略)的问题(例如巴什博弈.尼姆博弈),本质上来讲,就是组合数学当中的组合游戏,并不是真正 ...
- CodeForces485A——Factory(抽屉原理)
Factory One industrial factory is reforming working plan. The director suggested to set a mythical d ...
- uva202:循环小数(循环节+抽屉原理)
题意: 给出两个数n,m,0<=n,m<=3000,输出n/m的循环小数表示以及循环节长度. 思路: 设立一个r[]数组记录循环小数,u[]记录每次的count,用于标记,小数计算可用 r ...
- hdu 3303 Harmony Forever (线段树 + 抽屉原理)
http://acm.hdu.edu.cn/showproblem.php?pid=3303 Harmony Forever Time Limit: 20000/10000 MS (Java/Othe ...
- poj2356 Find a multiple(抽屉原理|鸽巢原理)
/* 引用过来的 题意: 给出N个数,问其中是否存在M个数使其满足M个数的和是N的倍数,如果有多组解, 随意输出一组即可.若不存在,输出 0. 题解: 首先必须声明的一点是本题是一定是有解的.原理根据 ...
- POJ- Find a multiple -(抽屉原理)
Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 6452 Accepted: 2809 Special Judge D ...
- 51nod 1103 N的倍数(抽屉原理)
1103 N的倍数 题目来源: Ural 1302 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 一个长度为N的数组A,从A中选出若干个数,使得这些数的和是N的倍 ...
随机推荐
- zabbix 基于JMX的Tomcat监控
zabbix 基于JMX的Tomcat监控 一.环境 ubuntu14.04 LTS Java 1.7.0 zabbix 2.4.5 二.安装配置 1.安装JavaGateway 在ubuntu14. ...
- oracle - 创建数据库
在服务器端的oracle,用户有点差异,当 我通过 'sqlplus / as sysdba' 命令登陆后,并不能创建数据库,sysdba拥有最高的系统权限,登陆后是 sys,以as sysdba登录 ...
- OpenWrt的主Makefile工作过程
OpenWrt是一个典型的嵌入式Linux工程,了解OpenWrt的Makefile的工作过程对提高嵌入式Linux工程的开发能力有极其重要意义. OpenWrt的主Makefile文件只有100行, ...
- JSP技术
1. JSP技术简介 JSP全称是Java Server Pages,它和servlet技术一样,都是SUN公司定义的一种用于开发动态web资源的技术.是sun公司定义的一种规范,JSP实际上就是Se ...
- jacob 操作word
1. 首先下载jacob-1.18.zip,解压后有两个文件jacob.jar 和 jacob.dll.需要把jacob.jar放到你工程的classpath中并且把jacob.dll放到jdk的bi ...
- servlet从xml提取数据登陆
在xml文档下可以设置参数的初始值,在这里把他当成了数据库在用 <servlet> <description>This is the description of my J2E ...
- js 表达式与运算符 详解(上)
表达式: 表达式是用于JavaScript脚本运行时进行计算的式子,可以包含常量.变量.运算符 <script> var r = 2 var pi = 3.14 var circle = ...
- 使用php实现爬虫程序 套取网站的图片实例
<?php //去采集a67 图片 网站链接 http://www.xiamov.com/list/1/p.2 你也可以采集其他网站的图片 //创建链接 dedecms--a67 //设置执行不 ...
- flask request
请求对象要操作 URL (如 ?key=value )中提交的参数可以使用 args 属性:searchword = request.args.get('key', '')用户可能会改变 URL 导致 ...
- [r]Seven habits of effective text editing
Seven habits of effective text editing(via) Bram Moolenaar November 2000 If you spend a lot of time ...