趣题:Kontsevich的单人跳棋游戏

      

    有一个无限大的棋盘,棋盘左下角有一个大小为 n 的阶梯形区域,其中最左下角的那个格子里有一枚棋子,如左图所示。你每次可以把一枚棋子“分裂”成两枚棋子,分别放在原位置的上边一格和右边一格。你的目的是通过有限次的操作,让整个阶梯里不再有任何棋子。下图所示的是 n = 2 时的一种解法。我们的问题是:对于那些 n ,这个游戏是有解的?

      

Read more…

趣题:庄家的秘密序列

    下面是 2013 年 9 月 IBM Ponder This 的谜题。

    A 和 B 在赌场玩一个游戏,他们要协同作战与庄家对抗。游戏一轮一轮地进行,每一轮的规则都是一样的:首先 A 赌 0 和 1 当中的某个数字,然后 B 再赌 0 和 1 当中的某个数字,最后庄家给出 0 和 1 当中的某个数字;如果所有的三个数字都相同,则 A 和 B 获胜,否则庄家获胜。游戏前, A 和 B 可以商量一个对策,但游戏一旦开始,除了下赌注本身之外,两人不能再有其他任何形式的交流了。

    容易看出,如果 A 和 B 都随机下注,他们只有 25% 的获胜概率。然而,如果两人事先约定,在每一轮中, B 总是跟着 A 下注, A 赌什么 B 就赌什么,那么他们获胜的概率就会提高到 50% 。但是,不管采用哪种方案,在最坏情况下,两人都有可能一次也不能获胜。

    有意思的事情出现了。在游戏开始前两人商量策略的时候,两人突然意识到, B 有办法偷到庄家将会在游戏中使用的 01 序列。也就是说,游戏开始后,每一轮里庄家要出什么, B 都将会知道。但是,一旦 B 拿到了这个 01 序列, B 就不能和 A 交流了。在这样的条件下,两人能做得比刚才更好吗?能!比如说,两人可以保证在最坏情况下也有至少 50% 的获胜次数: B 可以在第 1, 3, 5, 7, … 轮游戏中赌下一轮庄家将会出的那个数(这相当于暗示了 A 下一轮赌什么),两人便能保证在第 2, 4, 6, 8, … 轮游戏中获胜了。

    我们的问题是:假设游戏一共有 9 轮,设计一种策略使得 A 和 B 能够保证至少 6 次胜利。

Read more…

两两接触的等粗且无限长的圆柱体

    大家在吃饭喝酒时是否注意到了这样的事情:三个人碰杯时,每个人的杯子都能同时和其他两个人的杯子相接触,很完美;但是四个人碰杯时,任一时刻总会有两个人碰不到杯,非常尴尬。有一次和三个好朋友吃饭,四人碰杯时又发生了这种尴尬的情况,突然有一个人异想天开,把他的杯子放到了另外三个杯子的上面,从而实现了四个杯子两两接触!我们自然引出了这样一个问题:如果 n 个全等的圆柱体两两相接触,则 n 最大是多少?

      

    对于不同形状的圆柱体,答案可能是不一样的。 Martin Gardner 在 Hexaflexagons and other mathematical diversions 一书中提到,我们可以精巧地摆放 5 枚硬币,使得它们两两相接触,如上图所示(注意,最底下还藏着一枚硬币)。同时, Martin Gardner 问到,能否摆放 6 支香烟让它们两两接触?一个经典的答案如下:

      

Read more…

怎样把一个钝角三角形分成若干个锐角三角形

    这是我最喜欢的几何谜题之一:你能否在纸上画一个钝角三角形,然后把它分割成若干个锐角三角形?令人难以置信的是,这竟然是可以办到的!继续看下去之前,大家不妨先自己想一会儿。

      

    每次我在课堂上提出这个问题的时候,学生们总会疯狂而盲目地进行尝试。根据我的观察,绝大多数人都会先画一个不那么钝的钝角三角形(其实这本质上并不会简化我们的问题),然后作出一系列类似于图 1 的尝试,但最后都以失败告终。此时我往往会反复强调:要有方法啊,要有方法!首先,想必很多人已经注意到了,我们必须在钝角里引出一条线(如图 2 所示),这样才能把钝角给消除掉。接下来,则是很少有人意识到的一点:我们不能让这条线一直延伸到对边,否则原三角形将会被分成一个锐角三角形和一个钝角三角形(或者两个直角三角形),这并不能解决根本问题。也就是说,这条线在到达对边前就必须得分岔。最后一个关键的问题就是,分成几岔?显然,分成三岔(如图 3 所示)是不够的,因为这样只能把一个周角分成四份,它们不可能都是锐角。为了让所有的角都是锐角,我们至少要让这条线分成四岔(如图 4 所示)。最后,再把一些没有连起来的点连起来,我们就得到一个像模像样的答案了(如图 5 所示)。

Read more…