吃的不是蛋糕

  话说当年上大学的时候有一次过生日,身在外地的MM给俺订了一个大蛋糕。幸福!激动!happy!当俺看完卡片,屁颠屁颠地把蛋糕拎回寝室时,发现屋里一字排开端坐着若干个猥琐男,全都两眼放光的对着俺淫笑—我看了看手里的蛋糕,顿时内牛满面。

  按理说,过生日一般都有唱生日歌、许愿、吹蜡烛、切蛋糕等诸多温馨浪漫的环节。不过俺们寝室这帮禽兽,很显然是不会顾及到俺幼小的心灵的,他们眼里只有蛋糕。于是,俺的生日会就干净利落的直接进入到最后一步—切蛋糕,杯具啊!

  不过,在动刀的时候,怎么切就成了一个大问题,因为僧多粥少,几爷子又谁也不愿意吃亏。于是,我们这帮理科宅男开始了热烈的讨论……

  既然都是学理科的,做事自然要讲究严谨,所以哥几个对 “切蛋糕”这个问题的模型做了几个假设。首先,需要假设这个蛋糕是正圆柱体的,不然这个讨论就没法进行下去了(至于其他那些什么方的扁的暂时先不考虑)。然后,我们假设每一刀切下去都能保持垂直切割的状态。而最后一个假设,则确实比较“假”一点,因为我们假设的是这个蛋糕只有两个人吃(残念……虽然寝室的几个大老爷们对此表示严重抗议,不过鉴于此时问题已经够复杂了,所以维持原判……)。到这里,实际上我们研究的就是一个蛋糕经若干刀分成若干份之后,两个人按照一定的顺序(顺时针或逆时针)一人一块来吃的话,谁能吃得多?是的,这个问题看上去确实很白痴,有同学肯定会说,每个人都取来自己分得的蛋糕,然后最后称一下不就知道了?从结果上来说,没错,可是你能保证每次下刀都一样吗?因此,咱们得站在理论的高度来分析这事!

  基于上面的模型,我们开始来动刀吧!第一种情况是最理想的,就是我们的每一刀切下去都经过了蛋糕的圆心,所以这时不管切几刀,两个人分到的蛋糕都一样多。

  很显然,做蛋糕的师傅不会在蛋糕上弄一个坐标来让你下刀,因此实际上我们切蛋糕的时候是根本不可能保证每一刀都精确地切过圆心的。于是,问题又来了,如果每一刀交错点不在圆心上,那两个人谁能分的多呢?所以,我们第二种要讨论的就是左上图显示的这种情况:

  显而易见,如果我们切两刀的话,那蛋糕将会被分成四份。由于这两刀的交错点不在圆心上,那么一定会有一块会大一些,也就是包括蛋糕圆心的那一块。结果很明显,谁RP爆发吃到了含有圆心的那一块,那么他最后必然会分得更多的蛋糕,也就是左上图中没染色的那两块。

  至于第三种情况,则是切4刀、6刀、8刀甚至更多的偶数刀,这时的结果与前面2刀切有所不同,切完以后两个人会分得一样多的蛋糕,如左中图所示。这个问题并不是很难证明,不用很难的代数知识就可以解决,有兴趣的同学可以自己试着挑战一下。

  讨论完偶数刀,再来考虑奇数,这才是难点所在。通过计算,当我们切3刀的时候,吃到蛋糕中心部分的人分得的蛋糕更多。但是当我们切5刀时,结果正好相反,吃到中心部分的那个人分得的蛋糕反而更少。我们再继续计算下去,再增加2刀达到7刀的时候,结果又反过来了,跟3刀一样……就这样,每到下一个奇数,结果好像就颠倒一次。

  那么,如何才能分析到所有奇数刀的情况呢?这才是问题的关键所在。这个问题虽然看似简单,但是要你做出一个严格的数学证明,却是灰常灰常不容易的。就像历史上那些著名的数学难题一样,不仅需要精密而且精巧的方法,还得要几分运气和人品才能解决。关于这个切蛋糕具体的解决方法,推导过程相当惨烈,步骤相当复杂,所以在此就不赘述了。反正大致思路是这样的,我们把问题转化了一下,把“每多切一刀,两个人相比谁多谁少”由一个正负值的模型来表示,而为了分析这个正负值是如何变化,则又需要一个代数模型来计算。经过一番折腾和搜寻,我们终于从一篇古老的论文中找到了所需的模型,然后问题就迎刃而解了。如图所示,结论就是:切3,7,11,15刀(4N-1刀)时,吃得到蛋糕中心的人会分得更多;而切5,9,13,17刀(4N+1刀)时,吃到中心的人分得少。

  OK,至此这个问题算是解决了,结论也证明了。不过估计有同学会问:这个给我们的工业生产带来什么好处了吗?呃……好吧,没有,暂时还没有。不过呢,如果你用Geek的眼光来看的话,这就是生活中的美好时光了,任何一件事情只要深入思考都能找到其中所蕴含的精巧思路和严谨逻辑,这才是Geek体验生活、享受生活、征服生活的过程,也是展示思考魅力的过程。嗯,貌似扯远了一点,总之,记住当你跟另外一个人分蛋糕、披萨、大饼、西瓜之类玩意儿的时候,如果切了偶数刀的话,那就一人分一半;如果切了奇数刀的话,那么你就有50%概率能多吃点。所以呢,如果童鞋们以后想多吃多占的话,就记得要自己去主刀哦!

  从此以后,哥吃的不是蛋糕,是寂寞。
……
关注读览天下微信, 100万篇深度好文, 等你来看……
阅读完整内容请先登录:
帐户:
密码: