游戏中的数学(txt+pdf+epub+mobi电子书下载)


发布时间:2020-07-28 10:16:04

点击下载

作者:莫海亮

出版社:电子工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

游戏中的数学

游戏中的数学试读:

前言

智力游戏中通常都包含一些困难的问题,往往需要一定的知识才能解决,有些困难的问题甚至动用大型计算机也无法解决。从小孩到老人、从普通人到顶级科学家,很多人为此耗费了大量的时间和精力,从中获得无穷的乐趣,同时增长了知识。

智力游戏一方面以游戏的形式锻炼玩家的脑、眼、手等的能力(魔方是一个典型的代表),使人们身心健康,并增强思维的敏捷性。历史上,很多科学天才从小就是某些智力游戏的高手。另一方面,智力游戏往往蕴含很深的科学原理,对推动科学,尤其是数学和计算机科学的发展作出了很大的贡献。因此,智力游戏在世界广受欢迎。

本书主要介绍智力游戏中的多联骨牌、多联钻石和多联蜂窝,重点是五格骨牌,也就是在我国被称为“伤脑筋十二块”的游戏。

多联骨牌、多联钻石和多联蜂窝的拼图千变万化,趣味无穷。本书正文只讨论同数学有关的图形。读者可以充分发挥创造力和想象力,拼出有趣美丽的图形来。

笔者学识有限,书中错误和不足在所难免,希望读者不吝指教,多提宝贵意见,谢谢大家。莫海亮第一部分 多联骨牌

在国外,以正方形为基础构成的拼板类游戏称为“Polyomino”。美国数学家所罗门·哥伦布(Solomon Wolf.Golomb,1932图1-1)在1954年12月的《美国数学月刊》(The American Mathematical Monthly)上发表的《棋盘与多联骨牌》(Checker Boards and Polyominoes)一文中最早使用了“Polyomino”这个名称。Polyomino译为“多格骨牌”或“多联骨牌”。但具体到由n个正方形格子的骨牌,我国主要翻译为“n格骨牌”,如:“三格骨牌、五格骨牌”等。当然,也可以叫做“三联骨牌、五联骨牌”等,意思差不多。图1-1 所罗门·哥伦布

这类拼板游戏极具魅力,它的起源应该追溯到我国古代的“骨牌”游戏,但真正将其发扬光大的,却是西方人。西方人在中国骨牌的基础上开发出大量妙趣横生的游戏,盛行全世界,而且对它进行了非常深入的研究,由此发现了很多重要的数学定理。第1章 骨牌1-1 骨牌的起源和历史

宋徽宗宣和二年(公元1120年),民间流行一种名叫“骨牌”(图1-2)的赌博游戏。宋高宗时由朝廷诏令颁布后,迅速在全国盛行。图1-2 骨牌

据明朝张自烈在《正字通》(图1-3)中说,“牙牌,今戏具。俗传宣和二年设,臣某疏请设牙牌三十二扇,计点一百二十有七,以按星宿布列之,高宗时诏如式颁行天下,谓之骨牌,如博塞格五之类,非必自宣和始也。”图1-3 正字通

由此可以看出,骨牌是朝廷诏令颁布而流行的赌博游戏。具体起源时间已无从考证。现在有些人说始自宣和二年,但从张氏记载中可以看出,张氏对此是持怀疑态度的,他认为在宋宣和以前就已有骨牌。

当时骨牌多用牛骨制成,故称“骨牌”,也有用象牙制成,故亦称“牙牌”。因始流行于宣和时期,因此又将骨牌称为“宣和牌”,民间则称之为“牌九”或“天九牌”。

骨牌由骰子演变而来,牌面为两个骰子点数,较骰子复杂,因而骨牌的玩法也比骰子更为多变和有趣,打天九、推牌九、相十副、过五关、接龙、碰和等,都是在明清时期盛行的玩法。各地也有用纸牌做的纸骨牌,名称、牌数都有差异,也能作为占卜用,如流传于清代的占卜书《牙牌灵数》,以牌组的好坏查询签诗来占卜吉凶。1-2 骨牌的组成

现在常见的骨牌一般一副有32张(图1-4),由22张文子和10张武子组成,点数由2到12。文子中有11款不同点数的牌,每款有不同名称、各有两张;武子不同点数的牌只有一张,以数字为名;武子的“丁三”和“二四”组合称为“至尊宝”,为最大牌。图1-4 骨牌1-3 风靡世界的多米诺

19世纪,骨牌从中国传入欧洲。据说1849年8月,意大利传教士多米诺从中国回到阔别8年的米兰。他拿出一件件珍贵的礼物分送给家人。然而,多米诺的女儿对这些礼物丝毫不感兴趣。为取悦女儿,多米诺最后拿出一套“牌九”逗她。没有想到,她女儿一下就被精致的28张骨制牌九所吸引,爱不释手。

多米诺的女儿有个男友阿伦德。阿伦德虽然对多米诺的女儿一往情深、百依百顺,但是,平素对其他人却总是粗鲁暴躁,是米兰城当时出名的坏脾气。为了纠正阿伦德的陋习,多米诺女儿想出了用牌九“治疗”他的方案。她要求阿伦德在规定的时间里把28张牌一张挨着一张整齐地竖起来(图1-5),不许倒下,如果不成功就一周不同他约会,也不同他参加任何舞会。

多米诺女儿的这一办法很有效果。码牌时,骨牌会因意外一次次倒下,玩家时刻面临着失败的打击,对玩家的体力和意志力是很大的考验。经过两个月的练习,阿伦德不仅每次都能又快又好地摆放牌九,而且无意中养成了耐心细致的好习惯,坏脾气大有改观。就这样,传教士多米诺女儿“教训”男友的做法逐步成了米兰人的趣谈,堆放牌九的游戏也一传十、十传百,成为米兰城人们喜闻乐见的游戏。

骨牌游戏不仅考验玩家的意志力,而且是发挥玩家想象力和创造力的很好的游戏。为了推广骨牌游戏,多米诺将骨牌改为木制材质,不久,木制骨牌就迅速在意大利及整个欧洲传播,它成了欧洲人的一项高雅运动。

为了感谢多米诺的创造,人们把这种骨牌游戏命名为“多米诺(Domino)”。从19世纪开始,多米诺逐渐成为世界性的运动。现在的多米诺游戏所用的道具已经不止骨牌一种,几乎所有可以立起来又能够直挺挺倒下的东西都可以成为游戏道具,出现了例如人体多米诺、床垫多米诺。码放骨牌分单人和团队两种,其中单人码放骨牌需要经历长达数十天甚至数月的辛苦和孤独,对意志力是不小的考验。图1-5 多米诺骨牌

多米诺骨牌给予世界的贡献不仅仅局限于各类游戏,意义更为重大的是,人们在这项游戏中受到启发而明白一个原理:“在一个相互联系的系统中,一个很小的初始能量就可能产生一连串的连锁反应”。这个原理称作“多米诺骨牌效应”,简称“多米诺效应”(Domino Effect),它在许多领域都有重要应用。“多米诺效应”和“蝴蝶效应(Butterfly Effect)”有所不同,多米诺效应强调的是过程的连锁反应,而蝴蝶效应强调的是在混沌(Chaos)系统中的放大效应。第2章 多联骨牌的样式2-1 常规多联骨牌的构成原则

骨牌的基本组成单元是正方形。由一个正方形构成的骨牌可以叫做“单格骨牌”。由n≧2个正方形构成的骨牌就叫做“n格骨牌”,一副n格骨牌的拼板常规的组成原则是:

1.所有正方形必须边边相连且成为一个整体拼板;

2.一个形状的拼板在一副n格骨牌中只允许有一块。

在一般情况下,多联骨牌中的拼板是不分正反面的,所以必须去除旋转反射相同的拼板。图2-1中,我们假定某副多联骨牌中有图(a)那样的一个拼板,它旋转90°、180°、270°以后的图形分别如图(b)、(c)、(d)所示。显然,图(a)、(b)、(c)、(d)这四者是同一块拼板,只是摆放位置不同而已,所以只能取其中之一。图2-1 旋转相同的拼板

我们再来看图2-2,其中的图(b)是图(a)的水平反射形成的,图(c)是图(a)的垂直反射形成的。显然,图(a)、(b)、(c)这三者是同一块拼板,因此,在一副n格骨牌中也只能任取其一。图2-2 反射相同的拼板

对于n格骨牌来说,n=6是一个分水岭。n≦6的多联骨牌中间没有空洞,n>6的多联骨牌中间存在带空洞的拼块了。2-2 多联骨牌样式

一副单格骨牌只有一个拼板,是个正方形(图2-3),是构成其他多格骨牌的基础。图2-3 单格骨牌

骨牌或叫双格骨牌,在西方也叫“多米诺”或“多米诺骨牌”。

多米诺由2个正方形组成。除去旋转反射相同的情况,它只有一种形式,如图2-4所示。图2-4 双格骨牌、多米诺骨牌

由三个正方形可以得到“三格骨牌”,除去旋转或反射相同的情况,有两种不同的拼板(图2-5),分别叫做“I”形和“L”形三格骨牌。图2-5 三格骨牌

一副四格骨牌有5个拼块(图2-6)。图2-6 四格骨牌

由五个正方形组成的拼块,除去旋转反射相同的情况,总共有12种不同的图形(图2-7)。这12个拼板构成的拼图游戏,难度恰到好处,深受欢迎,是人们娱乐最多,也是研究最深入的多联骨牌智力游戏。在国外称作“Pentomino”,音译为“潘多米诺”,这就是“五格骨牌”。也许因为Pentomino游戏有十二种拼块,我国多将其称为“伤脑筋十二块”,也有叫“五连方”。后面我们把它作为重点,将专门有一部分来讨论这个游戏。

为了方便描述,世界上统一根据拼块的形状用英文字母“F、I、L、N、P、T、U、V、W、X、Y、Z”将所有拼块命名,如图2-7所示。由图可见,大多数命名都比较形象、直观,只有“F”这个拼块有点别扭。图2-7 伤脑筋十二块、五格骨牌2-3 多联骨牌拼块的数量

研究各种骨牌问题,首先得知道骨牌拼块的数量,这是多联骨牌最基本的问题。

给定一个数值n,能否由某一个函数公式计算出n格骨牌拼块的数量呢?

很遗憾,现在人们还没有找到这样的函数公式,也不知道这样的公式是否存在,目前只有一个大概的估值函数。

设n格骨牌拼块全部数量为An(含反射相同的拼块),那么:

其中λ=4.0626,c=0.3169,这两个数值都不是精确值。

现在人们得到骨牌拼块的数量均由计算机枚举所得,具体见“表2-1”表2-1 骨牌拼块数量统计表第3章 多米诺骨牌

多米诺骨牌除了多米诺游戏之外,也有一些有趣的数学问题,这里举两个例子。3-1 覆盖缺角棋盘问题

假定棋盘的一个方格正好和多联骨牌的基本组成单元—一个正方形一样大(这个假设以后不再重复)。将国际象棋棋盘两个对角方格挖掉(图3-1),问:能否用若干个多米诺骨牌不重叠完全覆盖住这样的棋盘?为什么?图3-1 去掉两个对角的国际象棋棋盘

这个问题比较简单,答案是不能。因为我们将多米诺骨牌放置到棋盘上,无论怎么放置,每个多米诺骨牌总是覆盖棋盘黑白各一个格子,所以无论多少个多米诺骨牌,覆盖棋盘的黑、白格子数的总数是相等的。我们看到棋盘被挖掉两个对角后,剩余部分为32个黑格,30个白格,或30个黑格,32个白格,黑、白格子的数量并不相等,所以无法用多米诺骨牌覆盖剩余部分。3-2 覆盖棋盘线问题

一个n×n棋盘上有纵、横各n-1条棋盘线。问:能否用多米诺骨牌不重叠完全覆盖住一个6×6棋盘,使得任何一条棋盘线都会被至少穿过一个多米诺骨牌?如图3-2所示就不符合要求,因为第二条棋盘线不会穿过任何一个多米诺骨牌。

这个问题的答案是不可能,有一个比较简洁的证明:图3-2 贯通的第二条横向棋盘线

任意一条平行于棋盘线的水平线都将棋盘分成上下两部分,这两部分所包含的单位正方形格子数都是偶数。那些完全在水平线上面或下面的多米诺骨牌,会占据棋盘偶数个格子。因此,穿过水平线的多米诺骨牌会占据剩余的偶数个格子。因为每一个穿过水平线的多米诺骨牌都会在上下两部分棋盘各占据一个格子,所以为了完全覆盖棋盘,穿过水平线的多米诺骨牌必须有偶数个才行。同理,每条平行于棋盘竖直方向的分割线,也都会穿过偶数个多米诺骨牌。然而,在6×6棋盘中,水平线和竖直线共有10条,要使得每条线上至少都有2个多米诺骨牌是不可能的(总共需要20个骨牌),因为整个棋盘最多只能放下18个多米诺骨牌。

所以,在6×6棋盘中满足要求的覆盖是不存在的。

不过,棋盘再稍大一些,这种推理证明就不管用了。例如在一个8×8棋盘中,水平线和竖直线共有14条,它们要求至少穿越28个多米诺骨牌。而棋盘最多可以放下32个多米诺骨牌,可以满足需求。那么,在8×8棋盘中,满足要求的覆盖是否存在呢?更一般的,哪些m×n棋盘里存在满足要求的覆盖?

假设m≤n,当m=1,n=2,是单个多米诺骨牌,可以当做一个平凡解。

m=2的情况可以直接排除。m=3也很容易看出不行,棋盘最左侧一列不可能全是横向或纵向多米诺,其余情况发展到最后不可避免地会出现一条通畅的水平线。

m=4时也不可能。由于棋盘最左边一列不能全是横向或纵向多米诺,剩下的本质不同的可能性就只有两种(图3-3),接下来它们都会填满两整列,最终都会被迫失败。图3-3 两种可能

接下来是m=5。前面已经讨论过,符合要求的覆盖里,穿越多米诺骨牌的分割线必须穿越偶数个多米诺骨牌,那么棋盘的两边就不能都是奇数,所以m=n=5的情况直接排除。下面考虑m=5,n=6。这是第一次出现有解的情况!答案并不唯一,其中一个答案见图3-4。图3-4 无纵贯线和横贯线的覆盖

从5×6棋盘开始,我们可以对棋盘一边任意扩展2k长度,都是有解的。通过对一般化情况的推理归纳得出结论:满足覆盖要求的m×n棋盘,必须且只须满足下面条件:

1.m和n至少有一个是偶数;

2.m和n必须都大于4;

3.m和n不同时等于6。

读者可以尝试构建8×8棋盘的放置。第4章 三格骨牌4-1 L形三格骨牌的棋盘覆盖问题

1954年,22岁哈佛大学的学生所罗门·哥伦布(Solomon W.Golomb)证明了一个定理:“在2n×2n的棋盘中抽走任意一个单位正方形,剩下的图形可被一定数量的L形三格骨牌互不重叠地完全覆盖”。

可以用数学归纳法证明这个定理:

假设:“在2n×2n的棋盘中抽走任意一个单位正方形,剩下的图形可被L形三格骨牌互不重叠地完全覆盖”成立。现在考虑2n+1×2n+1棋盘。(1)将2n+1×2n+1棋盘沿棋盘两条中轴线分成四个2n×2n的正方形部分,分别涂以粉色、黄色、绿色和蓝色,抽走的单位正方形为红色,如图4-1所示。图4-1 将2n+1×2n+1棋盘一分为四(2)将不包含被抽走单位正方形的三个2n×2n正方形部分(图中的粉、绿、蓝三个),在接近棋盘中心的角上各抽走一个单位正方形(图4-1中用灰色标志)。根据假设,这三个2n×2n正方形被抽走一个单位正方形后,剩下的部分都可被L形三格骨牌互不重叠地完全覆盖。(3)三个被抽走的单位正方形组成一个L形三格骨牌(图4-1灰色部分),它当然可以被L形三格骨牌覆盖。(4)现在,在剩余的那个包含抽走一个单位正方形(图4-1红色正方形)的2n×2n正方形部分(图4-1黄色区域),根据假设,它可以被L形三格骨牌互不重叠完全覆盖。

于是可以得出结论:如果2n×2n棋盘被抽走其中任意一个单位正方形后可被L形三格骨牌互不重叠完全覆盖,那么2n+1×2n+1棋盘被抽走其中任意一个单位正方形后也可被L形三格骨牌互不重叠完全覆盖。

当n=1时:从2×2的棋盘中抽走一个单位正方形,必定形成一个L形三格骨牌,它肯定可被L形三格骨牌完全覆盖。

于是可以得出最后结论:“在2n×2n的棋盘中抽走其中任意一个单位正方形后,剩下的图形一定可被一定数量的L形三格骨牌互不重叠地完全覆盖”。证明完毕。

应当指出,所罗门的结论是充分的,但非必要。例如5×5的棋盘,去掉角上一个格子后,也可以用L形三格骨牌完全覆盖。

下面看一些L形三联骨牌覆盖的具体例子:对于2×2棋盘,抽掉一个单位正方形后,是一个具有三格的L形,可以被L形三联骨牌覆盖是显而易见的,见图4-2(a);4×4棋盘的一个覆盖见图4-2(b);8×8棋盘覆盖的例子见图4-2(c),其中3个L形部分的大小成1:4:16,剩下的覆盖方法一目了然。图4-2 L形三格骨牌覆盖示例4-2 用奇数块L形三格骨牌拼出正方形

两个L形三格骨牌可以拼成一个2×3的长方形,于是12块L形三格骨牌可以拼出6×6的正方形。现在问,能否用奇数块L形三格骨牌拼出正方形?如果可以,正方形最小多大?

分析:因为L形三格骨牌的面积是奇数,奇数块L形骨牌的总面积仍旧是奇数。那么,如果问题有解,拼出的正方形面积也必定是奇数。

面积为奇数的正方形有:1×1=1、3×3=9、5×5=25、7×7=49、9×9=81…L形骨牌的面积等于3,于是,拼出的正方形面积除了必须是奇数外,还必须可以被3整除。符合这一要求的正方形有3×3=9、9×9=81…

3×3的正方形可以排除,尝试一下拼图,很容易知道无解(也可以用染色法证明无解,在此略)。接下来看9×9的正方形,用上面所罗门得出的结论,将正方形进行分割,不难得出其解,如图4-3所示。图4-3 奇数个L形三格骨牌拼出正方形

所以用奇数块L形三格骨牌拼出正方形是可能的,正方形面积最小为81。4-3 用奇数块L形三格骨牌拼出最小矩形

在上一节中,我们用奇数块L形三格骨牌拼出了正方形,面积最小是81。现在问:用奇数个L形三格骨牌拼出的矩形最小是多大?

分析:设矩形的两边分别为a和b,并且a≤b。那么,于是a和b必定都是奇数。

引理:如果奇数块L形三格骨牌可以覆盖一个矩形,那么这个矩形的边长必大于3。

证明:a不可能等于1,因为这会造成矩形放不下一个拼块,无解;

当a=3时,如图4-4所示,为了覆盖矩形最左边第1列的3个格子,两个L拼块的放置方式是唯一的,但在两个L形拼块的右边又会出现1列三个格子(图4-4虚线部分),它要求的覆盖与第1列一样……以如此方式循环下去,永远不可能使得另一边b为奇数。所以a必定大于3,引理成立。图4-4 a=3时情况

根据引理,我们取a最小值5,则b最小为9(使面积可以被3整除)。这个矩形是可能的,如图4-5所示,矩形面积为45。图4-5 奇数个L形三格骨牌拼出矩形

接下来看面积小于45的矩形有哪些规格。在边长都大于3,两边都为奇数的限制下,矩形的规格只有5×5和5×7,它们的面积都不是3的整数倍,所以无解。因此,5×9的矩形就是可用奇数块L形三格骨牌拼出的最小矩形。4-4 L形三格骨牌的相邻问题

下面请看图4-6。乍一看,这个图形除了是个中心对称图形之外,平淡无奇。其实,这个图形有很高的技术含量!图中每一个L形三格骨牌都与另外四个L形三格骨牌相邻!这是目前已知满足这种性质的最小构造,由32个L形三格骨牌构成。图4-6 四个L形三格骨牌相邻构造

要求图形中每一个L形三格骨牌仅与另外两个L形三格骨牌相邻是很容易的,最小解是3个拼块(图形略)。要求图形中每一个L形三格骨牌仅与另外三个L形三格骨牌相邻也不难,最小解见图4-7,它用了16块骨牌。图4-7 三个L形三格骨牌相邻构造

而要求每个骨牌都与另四个骨牌相邻,就很复杂了。图4-6竟用了多达32个骨牌才办到!要求更多的骨牌相邻,难度就更大了,有兴趣的读者可以研究一下。4-5 “I”形三格骨牌的棋盘覆盖问题“I”形三格骨牌也有相关的覆盖问题:在8×8的棋盘里,抽掉角上一个小正方形后,能否用若干块I形三格骨牌互不重叠完全覆盖?

这个问题最早由哥伦布(Solomon W.Golomb)提出,并用三色染色法巧妙解决。

如图4-8所示,将去掉右上角一个小正方形后的棋盘格子分别用红、绿、蓝三种颜色染成互相间隔的格子。图4-8 将棋盘着三种颜色

然后把一块“I”形三格骨牌放到棋盘上去,它必定覆盖红、绿、蓝格子各一个。所以无论多少块“I”形三格骨牌,覆盖的红、绿、蓝格子总数始终是相等的。数一下棋盘,红22格,绿21格,蓝20格,数目不相等,所以无法覆盖。

或许有人会说,被去掉的格子位置保持不变,将图4-8染色格子整体顺时针旋转90°,此时被去掉的格子所在的位置为红色格子位置,那么红、绿、蓝格子数不就相等了吗?其实不然,因为所有“I”形三格骨牌在棋盘位置可以任意摆放,无论怎么摆放,覆盖棋盘的三种颜色格子的总数始终保持相等。那么要求棋盘无论染色顺序怎么变化,三种颜色也要保持相等,只要出现三种颜色格子数不相等,覆盖就不可能实现。

棋盘上有没有这么一个格子,去掉它之后无论怎么染色,三种颜色格子数量始终保持不变呢?有的,角上斜线方向第三个格子就是,如图4-9所示。图4-9 去掉其中一个红色正方形可以被I形三格骨牌覆盖

唯有这四个格子去掉其中一个后,无论染色顺序怎么变化,棋盘三种颜色格子数始终都相等,那么用“I”形三格骨牌也就可以完全覆盖了,读者可以实验一下。第5章 四格骨牌

为了方便阅读,我们把四格骨牌的拼板图形在这里重复一下,如图5-1所示。图5-1 四格骨牌5-1 用非轴对称拼板拼轴对称图形

用四格骨牌中的两个拼板,其中保证至少有一个拼板不是轴对称图形,能拼出多少不同的轴对称图形?

我们观察到,五个拼板里有三个是轴对称的,两个不是轴对称的。可能的组合情况比较少,可以很方便地一一检验,共有六个解,如图5-2所示。图5-2 轴对称图形

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载