组合数学中的构造方法及其应用分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
组合数学中构造法的研究背景
1 组合数学中构造法的研究背景
在当今,组合数学是一门非常活跃的学科,它在各个不同的领域都有相当的应用,尤其在日益发展的计算机科学中。
因为计算机科学的核心内容是使用算法和离散数据。
而组合数学就是研究离散对象的科学。
组合数学是如此的重要,那你了解其中的构造法吗?提到构造法,我们首先来介绍下吧。
构造就是面对问题直接解决相当困难,可以借助其他的方法,用其他路径来解决我们的问题,“曲线救国”,问题便迎刃而解。
它不是一种数学方法,而是一种数学思想,体现了数学的发现、类比、划归、猜想、试验和归纳的思想。
这就是构造法的魅力。
谓构造性的方法就是数学中的概念和方法按固定的方式经有限个步骤能够定义的概念和能够实现的方法。
从数学产生那天起,数学中的构造性的方法也就伴随着产生了。
但是构造性方法这个术语的提出,以至把这个方法推向极端,并致力于这个方法的研究,是与数学基础的直觉派有关。
直觉派出于对数学的“可信性”的考虑,提出一个著名的口号:“存在必须是被构造。
”这就是构造主义。
构造法真正体现出了“数式与图形的沟通、直觉与逻辑的互动”,这也正是数学建模的一个基本特征。
另外,在应用构造法时,要明确目的,需要构造的是什么,根据什么设计构造方案。
构造的模型结构形式应尽可能的简单,以便于问题的解决,尽可能地使复杂问题简单化;构造的模型必须是熟悉的,通过熟悉的模型将难以入手的问题转化为熟悉的问题;构造的模型尽可能地直观,通过构造使问题变的直观明了。
2 组合数学中的构造方法
2.1 排列组合中的构造方法及其应用
构造法即构造性解题方法,它是根据数学问题的条件或结论的特征,以问题中的数学元素为“元件”,构造出新的数学对象或数学模型,从而使问题转化并得到解决的方法。
构造法本质上属于转化思想的范畴,但它常常表现出简捷、明快、精巧、新颖等特点,使数学解题突破常规,不但具有很强的创造性,而且更能让人领悟到数学的无穷乐趣和魅力,体会数学美的无处不在。
它是非常典型的数学建模,具有独特的探讨价值。
那我们就来看看构造法解排列、组合题的问题。
定义1 所谓排列,就是指从给定个数的元素中取出指定个数的元素进行排序。
从n 个不同元素中,任取()n m m ≤个元素(被取出的元素各不相同),按照一定的顺序排成一列,叫做n 个不同元素取出m 个元素的一个排列。
定义2 组合则是指从给定个数的元素中仅仅取出指定个数的元素,不考虑排序。
从n 个不同元素中,任取()n m m ≤个元素并成一组,叫做从n 个不同元素中取出m 个元素的一个组合。
数学解题的一个基本思想就是设法将所要求解的问题转化为我们所熟悉的或容易解决的问题,这一点在解排列组合问题是尤显重要。
我们在学的过程中药经常强化这一思想,以便寻求更便捷的解法。
接下来所提的构造模型法恰恰很好地做到了这一点。
2.1.1 构造排列组合解数的排列问题
捆绑法 捆绑法就是把分散的几个对象构造为一个组合,把这个组合看作一个元素和其他元素进行排列,然后再考虑大元素内部各元素间顺序,这样的构造很容易就能求得我们的所需。
1. 7个人站成一排,求出甲、乙、丙三人必须相邻的排法种数。
这个问题比较简单,但是它是排列组合中的相邻问题,面对这样的模型,我 们用熟知的“捆绑法”。
先将必须相邻的甲、乙、丙三个人构造成一个集合N ,于是由原来的7个人变为现在的“5个人”,即{}e d c b a ⋅⋅⋅⋅⋅1,1,1,1,1,对这五个元素进
行全排列,其排法种数为55A ,题中要求甲、乙、丙三人必须相邻,这三个人做全排
列为33A ,经题意我们构造了这样两个数列,通过这两个数列,我们明显看出解决这
个问题需要分步来做,由此可用乘法原则得排法种数为3355A A 。
构造“捆绑法”主要用于求解“必须相邻”的模型,但是对于必不相邻的问题呢?我们可以用另外一种模型——“插入法”,它能够解决“必不相邻”的问题。
插板法
构造一个元素组合的全排列,在这一个排列的间隙中插板,不同的插板会有不同的方法种数,换句话说就是在在n 个元素间的(n-1)个空中插入若干个(b )个板,可以把n 个元素分成(b+1)组。
2. 现有10个完全相同的球全部分给7个班级,每班至少一个球,问共有多少种不同的分法?
题目中球的分法可构造为三类:
(1)有三个班每个班分到2个球,其余4个班每班分到1个球,其分法种数
是371C N =;
(2)有一个班分到4个球,其余6个班每班分到1个球,其分法种数是
16172C C N =;
(3)有一个班分到4个球,其余6个班每班分到1个球,其分法种数是173C N =;
所以10个球按题意分法种数为8417161737321=++=++=C C C C N N N N 。
由上面解题过程可以明显感到,这类问题进行分类计算比较繁琐,若上题中球的数目较多,处理起来将更加困难,一次我们需要寻求一种新的模式来解决该问题,由此我们创设这样一种虚拟的情境——插板。
我们首先将10个相同的球构造为一个数列{}a a a a a a a a a a A ,,,,,,,,,=,这10个相同的数进行全排列,在数列中会有9个空当(除去首尾两个空当),现在我们用“挡板”把这个数列隔成有序的7份,每个班级依此按班级序号分到对应位置的几个球(可能是1个、2个、3个、4个)。
这样每个班级分到球的个数不在于它们所排的位置,借助于这样一种虚拟的“挡板”分配物品的方法称之为“插板法”。
根据上面情境分析可知,分球的方法实际便是挡板的插法:即9个空当之中插
入6个“挡板”,其方法种数为8469=C ,简洁明了。
2.1.2 构造排列组合解不定方程
3. 解不定方程2005=++z y x 的正整数解的组数。
此题用列举法求解比较困难,而用上面提出的“隔板法”模型,题目就比较简单了。
我们首先把这个题目构造为2005个相同小球,把2005个相同小球进行一个
全排列,两个相邻的小球之间我们构造出一个空格,在这个排列当中会有2004个空格(首尾不相连),在其中两个空格中各放入一块隔板,把2005个相同的小球分成三部分,每部分可构造为z y x ,,,每进行一次不同的小球分割,就会产生一组不同正整数解,这样题目简单明了了,把一个不定方程构造成了一个有序数列,通过
构造我们可得正整数解共有22004C 组。
从上述两例的解法看到,这种插板法解决起来非常简单,但是也要提醒大家一下,这类问题模型的构造要求的条件相当严格,必须具备以下三个条件:
(1)所要分的物品规格必须完全相同;
(2)所要分的物品必须分完,决不允许有剩余;
(3)参与分物品的每个成员至少分到1个,决不允许 出现分不到物品的成 员。
2.1.3 构造排列组合解几何问题
立体几何中的排列组合问题是我们学习中的一个难点,由于解决这类问题的方法灵活、思路独特,因此我们常常发出“解排列组合题难、解组合几何题更难”的感慨。
其实,解组合几何题也不是没有规律可循的,关键是我们要善于把有关问题转化为排列组合问题,这就要求我们明确构成几何图形的元素,适当分步选取元素。
利用构造法解组合几何题,可先构造几何图形,再统计其中的点、线、面的数目。
4. 在平面直角坐标中,x 轴正半轴上有5个点,y 轴正半轴有3个点,将x 轴上5个点和y 轴上3个点连成15条线段,这15条线段在第一象限内的交点最多有多少个?
这样一条条的数可以很快得出结果,但是这样浪费时间,而且麻烦,我们可以构造出四边形,通过求构造出的四边形的个数来求点数因为凸四边的对角线有一个交点,因此问题可转化为用8个点可构成四边形,而且四边形必须在x 轴或者y 轴上都有2个点。
在x 轴正半轴的5个点,这5个点可构成一个全排列,在构造的排列中任取2
个点,作为四边形的两个顶点,有35C 种选法,接下来构造在y 轴正半轴的3个点,
构造这3个点的一个全排列,其中任取出2个点作为,有23C 种选法,经过一番构
造,凸四边形的四个点找出,可构成四边形2325C C 2325C C 个,故在第一象限内的交点
最多有302325 C C 。
通过构造我们使问题简单化,直接去求解,可以得到答案,付出的努力也会很多,但是不划算,我们用构造出四边形,轻松解决掉,不费吹灰之力。
2.1.4 构造排列组合解可重复问题
5. n 元集的r -可重复组合个数为r r n C 1-+。
证明:该问题用组合的方法来解决。
首先构造n 元集{}n A ,,2,1 =,
以K 表示A 的全部r -可重复组合所成之集,1K 表示1-+r n 元集的全部r -组合所成之集。
令{}1,,2,11-+=r n A ,设{}K a a a r ∈,,,21 ,其中n a a a r ≤≤≤≤≤ 211,则11211321-+≤-+<<+<+<≤r n r a a a a r 。
这样很明显我们构造出了一个映射关系,{}{}1,,2,1,,,,,321321-+++→r a a a a a a a a r r 是K 到1K 上的一个一一对应映射,通过构造好的映射转化为一个好求解的元集1K ,由相等原则有
⎪⎪⎭
⎫ ⎝⎛-+==r r n K K 11,这样便求出n 元集的r -可重复组合的个数,用构造法把n 元
集的复杂组合问题,转化为简单的元集1K 的问题。
构造法在数学中占有十分重要的地位,在数学解题中亦有着十分重要的作用。
许多数学问题的求解,当我们把具体的对象构造出来以后,问题也就完全解决了。
构造法是帮助发现数学理论和解决问题的方法。
它在数学解题中的作用主要表现在两个方面:一是许多问题本身有构造性的要求,或者可以通过构造而直接得解;二是有些问题需要通过构造出一个与原问题有关或等价的新问题(我们亦称之为辅助问题)帮助原问题的解决,这种巧妙构思正是构造法的技巧与魅力所在。
构造法具有较大的灵活性和技巧性。
根据所要解决的问题特征,既可以构造函数、构造不等式、构造恒等式、构造数列模型,利用“数”解决数和形的问题。
我国在1992年的《数学教学大纲》关于数学能力的提法从“三大能力”改为“四大能力”,增加了“解决实际问题”的能力。
另外《高中数学新课程标准》对高中生硬具备的数学能力做了较为全面的阐述,意在提高学生空间想象、直觉猜想、归纳抽象、符号表示、运算求解、演绎证明、体系构建等诸多方面的能力,简言之,就是提高学生“数学建模”的能力。
构造法能把“数学建模”与“数学新课程”整合起来,它重在发展学生的应用意识和创新意识并希望能够上升为一种数学意识。
2.2 构造生成函数解决组合中的相关问题
生成函数又叫做母函数。
生成函数方法是离散数学的重要方法,是连接离散数学与连续数学的桥梁。
在组合数学中,生成函数的典型作用主要体现在组合计数方面,是解决组合计数问题的强有力工具之一,其基本思想为:为了获得一个序列
{}0≥k k a 的有关知识,我们引用一个幂级数来整体表示这个序列
() +++==∑∞
=22100x a x a a x a x G k k k (1)
,()x G 为序列{}0≥k k a 的生成函数。
这样,一个序列和它的生成函数一一对应,我们可
以通过对生成函数的运算和分析得到这个序列的很多性质。
18世纪,欧拉在研究正整数分拆时首先使用了母函数,19世纪初拉普拉斯在研究概率问题时得到进一步发展。
母函数的一种自然推广,导致概率论中引进强有力的工具—特征函数,它把随机变量的分布函数变换为它的特征函数,从而把对分布函数的研究转化为对对应的特征函数的研究,大大地推动了相互独立随机变量的和的极限理论的研究。
2.2.1 用生成函数构造递推关系
几个常用幂级数的展开
()∑∞
=-=-011n n t t ……………………………………………………………………
(2) ()∑∞
=-=-011n n n t a at (3)
()n n k t n k n t ∑∞
=-⎪⎪⎭⎫ ⎝⎛-===011………………………………………………………(4) ()
n n n k t a n k n at ∑∞=-⎪⎪⎭⎫ ⎝⎛-==-011……………………………………………………(5) ()n n n t n n n t ∑∞
=-⎪⎪⎭
⎫ ⎝⎛--⋅-=-0122112212111………………………………………………(6) 递推关系是计算中的一个强有力工具,而递推关系的求解一般比较困难,利用母函数求解递推关系则是一种主要的、行之有效的方法。
1. 求n 位十进制数中出现偶数个5的数的个数。
解:首先构造对象,令n a 是n 位十进制数中出现偶数个5的数的个数,n b 是n 位十进制数中出现奇数个5的数的个数。
因此有关系
12111999-----⨯=+=n n n n n a b a a ,其中81=a 。
则211098--⨯+=n n n a a 此关系为关于序列{}n a 的递推关系,如此解递推关系非常难于求出。
我们不妨考虑生成函数,来解决下这道问题,首先我们构造序列{}n a 的母函数()x A ,即
() +++=2321x a x a a x A ,这样我们便构造出了一个简单的生成函数,构造出了生成函数,好像没多大作用,我们继续构造与递推关系想关联的生成函数左右同时成以x 8即:
() +++=332218888x a x a x a x xA
接下来我们利用错位相加减的方法,得
()()x x x x x x x A x 10171810198109988122--=-+
=+⨯++=- ()()()
x x x x A 10181718---=,再将()x A 展开成幂级数的形式: ()()∑∞=⨯+⨯=⎥⎦⎤⎢⎣⎡-+-=021098721101981721n n k n x x x x A 。
递推关系的求解主要是利用递推关系求得母函数的一种形式算法,母函数确定了,相应的递推关系对应的结果就确定了,这样的例子还有很多,想著名的Hanoi 塔问题,Fibonacci 数列都是典型的利用母函数解决递推关系的例子。
2. 设2,110-==a a 且()26521≥-=--n a a a n n n ,求数列{}n a 的通项。
解:我们可以通过生成函数来解决,首先我们构造生成函数,如下:
令() ++++==∑+∞
=n n n n n x a x a x a a x a x f 22100 (7)
则() -----=--n n x a x a x a x xf 12105555.............................................(8) 且() ++++=-n n x a x a x a x f x 2312026666 (9)
(7)(8)(9)式分别构造出了递推关系式的每一项,21,,--n n n a a a ,构造出了生成函数,根据题意让几个生成函数进行运算,可得
()()()x a a a x f x x 0102
5651-+=+-,即()()x x f x x 716512-=+-,
有()()()()
∑∑∑∞=∞=∞=⨯-⨯=-=---=+--=00023425342531421565171n n n n n n n n x x x x x x x x x f ,从而n n n a 3425⨯-⨯=。
构造生成函数是为了更好的了解题意,更清楚的整出解题思路,对于递推关系问题,我们可以先试着写几个相关的递推关系,用到用不到不要紧,先罗列出来,根据罗列出来的函数来看问题,再根据题意,让几个不相干的函数产生关系,这样我们就成功了一大步了,然后慢慢继续我们就会得到我们所需的关系。
我们通过生成函数,构造出递推关系。
先根据题意列出我们所要的生成函数,列出的生成函数经过变换,达到我们题意所需要的形式,然后根据等式变换,变换出递推关系,这样一个简单的递推关系就得到了,再由递推关系继续求解,求得我们所需要的结果。
2.2.2 构造生成函数法解决好布局数
3. 这样一个棋盘,求该棋盘的好布局数。
看到这样我们不妨构造有坐标点的棋盘⨯
⨯
⨯⨯⨯⨯⨯
⨯⨯
,这个棋盘我们一目了然。
棋盘是有了,可是直接去求还是比较困难,要考虑的车的好布局数还是很多,我们
继续降阶⎪⎪⎪⎭
⎪⎪⎪⎬⎫⎪⎪⎪⎩⎪⎪⎪⎨⎧⨯⨯⨯⨯⨯⨯⨯⨯+⎪⎪⎭⎪⎪⎬⎫⎪⎪⎩⎪⎪⎨⎧⨯⨯⨯⨯⨯⋅=⎪⎪⎪⎭⎪⎪⎪⎬⎫⎪⎪⎪⎩⎪⎪⎪⎨⎧⨯⨯⨯⊗⨯⨯⨯⨯⨯t ,
降阶为简单的棋盘就比较好求解了,后边的棋盘可以看做是两个棋盘的乘积,我们继续求解棋盘
原式4326242591t t t t t ++++==⎭⎬⎫⎩⎨⎧⨯⨯⨯⋅⎪⎭
⎪⎬⎫⎪⎩⎪⎨⎧⨯⨯⨯⨯⨯+⎭⎬⎫⎩⎨⎧⨯⨯⋅⎭⎬⎫⎩⎨⎧⨯⨯⨯⋅= 。
求车问题就是对棋盘进行降阶,不好算的棋盘在继续降阶,直到降阶为我们好求解的棋盘,然后
对棋盘构造生成函数,展开形式幂级数,求对应的车问题。
4. 作5个相异元54321,,,,a a a a a 的全排列,其中1a 不排在第1位和第2位,2a 不排在第2位和第3位,3a 不排在第5位,4a 不排在第4位和第5位,5a 不排在第3位和第4位,问可以作出多少个不同的全排列?
解 :拿排列组合解决会非常麻烦,我不妨试一下看能不能转化为棋盘,把这5个数看做一行,他们会有5个位置,把这5个位置看成一列,这样我们便构造出了一个55⨯棋盘,根据题意,这5个数会有禁位,这便是一个有禁位排列问题,对应
的有禁位的棋盘为⨯
⨯⨯
⨯⨯⨯
⨯⨯
⨯,
其中⨯代表着禁位,则该禁格棋盘的车多项式为: ()⎪⎪⎪⎪⎪⎪⎭
⎫ ⎝⎛⨯⨯⨯⨯⨯⨯⨯⨯+⎪⎪⎪⎪⎪⎭⎫ ⎝⎛⨯⨯⨯⨯⨯⨯⋅=⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛⨯⨯⨯⨯⨯⊗⨯⨯⨯=t C t R , ()⎪⎪⎪⎭
⎫ ⎝⎛⨯⨯⨯⨯⨯⋅⎪⎪⎪⎭⎫ ⎝⎛⨯⨯⨯+⎪⎪⎪⎭⎫ ⎝⎛⨯⨯⨯⨯⋅⨯⨯⋅=t 这样便把一个复杂的问题用构造棋盘的形式形象的表示出来了,经过变化,构造成简单的棋盘,原问题经过构造转化成了现在简单的棋盘问题,通过求该棋盘的好布局数,便可得到我们所需要的结果,继续求解如下:
()()()()()32226513134121,t t t t t t t t t C t R +++++++++=
543215352891t t t t t +++++=,构造出了棋盘,我们继续构造生成函数去解决问题,如上所得,我们用生成函数求出了有禁位排列问题的车多项式,但是我们要求出在禁位上一个车也没有,即好布局数,我们接下来要求命中多项式。
()()()()()()5
43211151!2351!3281!49!5-+-+-⋅+-⋅+-⋅+=t t t t t t E ,我们所要求得是没有在禁位上的排列数,即()160=E 。
车多项式问题是解决实际问题时,构造法的最好体现,面对问题,我们首先看能不能符合棋盘,如果符合棋盘问题,转化为棋盘问题来解决,其中有限制的地方我们设置为禁位,列出有禁位的棋盘 ,然后构造出生成函数,求得我们的车多项
式,根据题意求有禁位的命中多项式,这样好布局数便可求出,问题便得到解决。
2.2.3 构造生成函数解决不定方程问题
5. 求不定方程()n r r x x x n ≥=+++ 21的正整数解的个数为⎪⎪⎭
⎫ ⎝⎛--11n r 。
这是求不定方程的正整数解,一般的解法是令1-=i i x y ()n i ,,3,2,1 =,则当1≥i x 时,有0≥i y ,且当()r x x x x n =++++ 321时,有n r y y y n -=+++ 21,反之亦然。
所以不定方程的正整数解的个数等于不定方程n
r y y y n --=+++ 21的非负整数解的个数,得出结果为⎪⎪⎭
⎫ ⎝⎛--=⎪⎪⎭⎫ ⎝⎛---+111n r n r n r n 。
这样可以得出,但是我们还可以排列组合,用排列组合的方法来解决这道题,首先我们构造一个排列,我们有r 个数,构造一个有r 个数的集合,对这个集合进行全排列,而我们不定方程中有n 个未知数,这样就是把有r 个数的集合分成n 份,接下来,我们对我们构造好的排列进行分份,在这个排列中,两个相邻的数至今,我们构造一个空隙,如此构造便可构造出1-r 个空隙,分成n 份,在空隙中就取1
-n 个,这样便构造成了一个组合,得出结果为11--n r C ,这个结果即为我们所求。
构造排列是一种途径,但是我们用生成函数来解决,更能胜过一筹,同样,构造生成函数我们要先构造x 的值即n t t t x ++++= 21,我们当中有n 个未知数,对这n 个未知数相乘,()n
n n t t t x ++++= 1,这样我们便得到一个生成函数,我们最后是要得r 的值,便求r x 的系数,它的系数即是我们所求,得结果⎪⎪⎭
⎫ ⎝⎛--11r n 。
6. 求不定方程14321=++x x x 满足条件8,8,8321≤≤≤x x x 的非负整数解的个数。
解:设所求为N ,则N 是()()3821t t t t A ++++= ,这样我们便构造了一个满足题设的生成函数,而我们所求为整数解的个数,则我们便取展开式中14t 的系数,而 ()()()()k k t k t t t t t t t t A ∑∞
=-⎪⎪⎭⎫ ⎝⎛+-+-=--=⎪⎪⎭⎫ ⎝⎛--=027********
223311111
所以5721312022532214=⨯-=⎪⎪⎭
⎫ ⎝⎛+-⎪⎪⎭⎫ ⎝⎛+=N ,即非负整数解的个数为57。
生成函数解决不定方程问题,我们首先要做的就是构造出一个生成函数,根据题意选择我们x 值为几次幂,然后相乘,取某一项符合题意的系数,这个系数即是我们所要求解的结果。
2.2.4 构造生成函数解证明组合恒等式问题
7. 求证2222234(1)(1)(32)2+3+424
n n n n n C C C nC +-+++= 可以看出,该组合恒等式左端比较复杂,不太可能利用组合公式去证明,观察后发现等式左端各项规律性较强。
通过分析,设法将等式左端看作是某一函数中确
定项的系数,由2n C 为()n
x +1中2x 项的系数,这样我们便构造了生成函数所具备的条件,构造生成函数为:2()(1)2(1)(1)(1)n n f x x x n x x =++++++≠-,即()x f n 是
一个以()x +1为未定元的幂级数,()n f x 中2x 的系数即为22222342+3+4n C C C nC ++。
同时,利用“错位相减法”()x f n 两边同时乘以(1)x +得
231(1)()(1)2(1)(1)(1)(1)n n n x f x x x n x n x ++=+++++-+++,构造好了生成函数,要往题意上靠拢,所以()()()x f x x f n n +-1得:
231()(1)(1)(1)(1)(1)n n n xf x x x x x n x +-=++++++++-+,整理得到:
11
2(1)(1)(1)()n n n x x n x f x x x
+++-++=+,比较2x 的系数即得所证结果。
从上面这个例子可以看出,根据题意,灵活地引入构造函数是证明组合恒等式的关键所在。
2.2.5 构造生成函数在概率中的应用
8. 在做抽样调查时,采访的男士有教师,医生,律师等不同的q 个行业,女士也有不同的p 个行业,假设我们在每一行业中至多选取2位男士和至多选取1位女士,问有多少种不同的方法取k 个人的样本?
解:要区分相同性别的人,当且仅当他们属于不同的范畴,现以选择k 个人的方法数量做生成函数。
在q 种范畴的每一个中,我们或者选择0,1,2位男士做样本,因此每个范畴给出()
21x x ++项,另外选择0或1位女士,所以p 种范畴中的
每一个给出(1+x)项。
所以, ()()()p
q x x x x G +++=112 因此选择k 个人的方法数量是()x G 中k x 的系数。
例如4,3===k q p 时,()()()()()[]3
23321111x x x x x x x G +++=+++= ()()[]32211x x x +++=
()()
()()()()364224613311231113103x x x x x x x x x +⎪⎪⎭⎫ ⎝⎛+++⎪⎪⎭⎫ ⎝⎛+++⎪⎪⎭⎫ ⎝⎛++⎪⎪⎭⎫ ⎝⎛= ()()()()3644256113131x x x x x x x +++++++=
所以,4x 的系数是⎪⎪⎭
⎫ ⎝⎛+⎪⎪⎭⎫ ⎝⎛+⎪⎪⎭⎫ ⎝⎛04325346。
即在每一行业中选取2位男士和1位女士有48种不同的方法取四个人的样本。
2.2.6 构造生成函数在几何问题中应用
9. 求由直线123=+y x ,直线0=x 及直线0=y 所围成的三角形内(包括边界)的整点(横坐标和纵坐标均是整数的点)的个数。
解:设所求为N ,则N 是满足条件123≤+y x 的非负整数解的个数。
令y x z 312--=,如果123≤+y x ,则0≥z 且123=++z y x ,所以N 是方程 123=++z y x 的非负整数解的个数,这样便构造出了生成函数为
()()() ++++++=632211t t t t t A ,而N 即为展开式中12t 的系数,而
()()()()()()∑∞
=---⎪⎪⎭⎫ ⎝⎛+++++=-++=--=0343233221322223211111k k t k t t t t t t t t t t A ,所以
最后3520152232224=+=⎪⎪⎭
⎫ ⎝⎛+⋅+⎪⎪⎭⎫ ⎝⎛+=N 。
10. 求平面直角坐标系Oxy 中,以()()()()5,0,0,5,0,5,0,5--D C B A 为顶点的正方形内(包括边界)的整点的个数。
解:设所求为N ,过点()()5,0,0,5B A 的直线方程为5=+y x ,由对称性知,点
()y x ,是该正方形内的一个整点充分必要条件是5≤+y x 且x 和y 均为整数,所以N 是方程5=++z y x 满足条件0≥z 的整数解的个数,这样便把问题构造成了条件方程,接下来继续构造生成函数,y x ,为非负整数,则构造y x ,的生成函数和z 的不同,他们未知元的幂数也不相同,根据题意构造出的生成函数为
()()() ++++++++=e t t t t t t t A 22
3212221,那么N 则是生成函数展开式中5t 的系数,通过生成函数可以得到我们所求,生成函数是构造的关键,()t A 变换计算得: ()()[]()()()()k k t k t t t t t t t A ∑∞
=---⎪⎪⎭⎫ ⎝⎛+++=-+=---=02321212221111112
所以612232242225=⎪⎪⎭
⎫ ⎝⎛++⎪⎪⎭⎫ ⎝⎛++⎪⎪⎭⎫ ⎝⎛+=N 。
构造生成函数解几何问题时,首先将空间图形问题,转化为容易操作的数学方程,通过关系式,我们容易构造生成函数,只有构造了生成函数我们才容易解决数学方程,二者彼此相辅相成,缺一不可。
生成函数(形式幂级数)具有良好的性质,便于处理,因此它的应用较广泛。
在组合分析、数论、概率论和图论等数学领域中有着广泛的应用。
2.3 鸽巢原理中的构造及其应用 鸽巢原理又叫抽屉原理,是组合数学中貌似平凡,却透着不平凡应用的原理之一,它是德国数学家狄利克雷首先发现的,因此又叫利克雷原理,它是一个重要而有基本的组合原理,是处理涉及存在性问题的重要方法,反映了整数最基本的性质,在数论和组合论中有着广泛的应用,常常结合几何、整除、数列等问题,解决初等数学中的组合问题。
2.3.1 鸽巢原理的含义
鸽巢原理的一般含义是,把3个苹果分别放在2个抽屉里,一共有4个不同的方法,()()()()0,3,1,2,2,1,3,0,无论哪种放法,都可以说“必有一个鸽巢放了两个或两个以上的苹果”,这个结论是在“任意放法”的情况下,得出一个“必然结果”。
类似的,如果5只鸽子飞进4个鸽笼里,那么一定有一个鸽笼飞进了2只或2只以上的鸽子;如果有6封信,任意投入5个信箱里,那么一定有一个信箱至少有2封信。
我们把这些例子中的“苹果”、“鸽子”、“信”都看作一种“物体”,把“抽屉”“鸽巢”“信箱”都抽象地看成“鸽巢”,于是可以得到鸽巢原理的简单表达形式。
如果把()n m m >个物体任意放入n 个鸽巢中,那么一定有某个鸽巢至少放有两个物体。
换一种表达形式我们可以说把m 个物体任意放入n 个抽屉里,如果r m k m +⨯=,那么当0=r 时,则其中一定有某个鸽巢至少放k 个物体;当0>r 时,则其中一定有某个鸽巢至少放1+k 个物体。
1. 某棋手参加了一次为期11周共77天的集训,已知他每天至少下一盘棋,而每周之多下12盘棋。
证明:在集训期间必有连续的若干天,在这几天里该棋手共下21盘棋。
证明:设该棋手从第1天到第()77,,3,2,1 i 天共下了i a 盘棋。
因为该棋手每周至多下12盘棋,所以棋手77天里至多下1321112=⨯盘棋。
又因为棋手每天至少下一盘棋,所以13217721≤<<<≤a a a ,从而
153212*********≤+<<+<+≤a a a 。
令{}153,,3,2,1 =A ,{}77211,,,a a a A =, {}77212,,,b b b A =,其中()77,,2,121 =+=i a b i i ,则A A A ⊆21 。
如果 ∅=21A A ,则15477772121=+=+=≥A A A A A ,这与153=A 矛盾,所以∅≠21A A ,从而存在211,A b A a k ∈∈,满足l k b a =,即21+=l k a a ,这表明该棋手由第1+l 天到第k 天这连续的l k -天里共下了21盘棋。
由此可看出鸽巢原理能帮我们解决不可思议的一些事情。
鸽巢原理的构造方法有几种经常用到。
(1)如果在长度为1的区间内有多于n 个点,可考虑把区间n 等分成n 个子
区间,由鸽巢原理得知,一定有两个点落在同一子区间,它们之间的距离不大于n
1,这种构造法是等分区间的构造,常用于处理一些不等式的证明。
(2)涉及自然数问题,有时常用对模n 同余分类法,构造n 个鸽巢:如果以2为模,将全体自然数分为“余0类”(偶数)和“余1类”(奇数);两个鸽巢以3为模,将全体自然数分为“余0类”“余1类”“余2类”;3个鸽巢以n 为模,可以将全体自然数分为“余0类”“余1类” “余1类”,共1-n 个鸽巢。
一般地,任给()1>n n 个自然数,其中必有两个数的差是1-n 的倍数。
任取n 个数,则必有两个数在一个鸽巢内,也就是这两个数除以1-n 所得余数相同,所以大数减小数,它们的差就是1-n 的倍数。
在涉及到一个集合图形内有若干点时,常常是把图形适当的分成适当的部分,用分割所得的小图形做鸽巢,这样的划分一般符合一个“分划”的定义,即鸽巢的。