组合数学—什么是组合数学(1)

组合数学所关心的问题就是把某个集合中的对象排列成某种模式,使其满足一些指定的规则,以下是反复出现的通用问题:

1.排列的存在性(存在性,即能否排列问题)

2.排列的列举或分类(计数,能用多种方法)

         1.研究已知的排列

         2.构造最优排列

组合数学是研究离散构造的存在、计数、分析和优化等问题的一门学科。

 

1.棋盘完美覆盖

1)一张普通的棋盘,被分成8行8列共64个方格。假如有形状相同的多米诺骨牌,每张牌正好可以覆盖棋盘上两个相邻的方格。是否能够把32张多米诺骨牌摆放在棋盘上,使得两张牌重叠,且在每张牌覆盖两个方格的条件下覆盖棋盘上的所有方格。

1961年 Fischer发现了这个数12988816=2^4*17^2*53^2 

一般棋盘拥有m行n列,被分成mn个方格。此时它的完美覆盖不完全存在。它的完美覆盖当且仅当m和n中至少有一个是偶数,或者等价于这个方格总是有偶数。

如果一个棋盘8*8,用一把剪刀剪掉两个方格,剩下的62个能否用31张骨牌完美覆盖。

解法:把8*8的方格交替着上黑色和白色,于是有了32个白色和32个黑色。如果剪掉相同颜色的方格则不能覆盖;如果剪掉不相同颜色的方格,则可以覆盖

2)m*n棋盘上b牌格完美覆盖

   (1)一个充分条件是b是m或n的一个因子时,成立。

   假设m*n棋盘的b格牌覆盖的完美覆盖。我们要证明m或者n被b除时余数是0。设m和n除以b时的商和余数分别是p,g和r,s,则

    m=pb+r,其中0<=r<=b-1

    n=qb+s,其中0<=s<=b-1

如果r=0,那么b是m的一个因子。如果s=0,那么b是n的一个因子。通过交换这个棋盘的行和列,不妨设r<=s。于是证明r=0

这样将棋盘考虑分成3个部分,上方pb*n部分,左下方r*qb部分,和右下方的r*s部分。

在上方部分,在每一种颜色出现p次,所以总共出现pn次。

在左下方,每一行上,每种颜色出现q次,因此他们总共出现rq次。

在右下方,r*s部分上,某种颜色出现的多少次。已知r<=s,且我们的着色特点使某种颜色在r*s部分的每一行上出现一次,所以r*s部分上出现r次。一方面共有rs个方格,另一种情况,b种颜色每种颜色都出现r次,共有rb个,则rs=rb,如果r不等于0,则s=b,与s<=b-1矛盾,必须有r=0。

所以:m*n棋盘有b格牌的完美覆盖当且仅当b或者是m的一个因子或者是n的一个因子

 

 

 

 

 

 

你可能感兴趣的:(组合数学—什么是组合数学(1))