知友的答案是数值解,真正的原因还另有玄机。
我们先考虑最理想的情况:
就是一直按照2的次方累加(抱歉借用一下楼上匿名用户的图):
所以理论上说这个游戏的最大解是:131072
但是目前为止,我见过最凶残的是这样的:
理论上的解不可能到达的原因在于:下个数字出现的位置是随机的
所以随着空白格子越来越少,某个格子出现数字的概率就越来越大。虽然游戏没有标准的最优解,但是却有标准的错误解,如果某一部操作失误,也许就直接game over了。但是在游戏初期,容错率是很高的,比如你随随便便拍一拍键盘,最起码也会出现一个128,因为随机出现的数字只有2和4,只要2与4共行或者共列就可以相互消除。
但是随着游戏进行,空白格子越来越少,需要固定位置的最大几个数字越来越多,这种容错能力就越来越低。比如想要把现有的4,8,16,32,64几个数字全部累积起来,其操作过程并不是唯一的,因为我们可以随时借用其他数字来代替目标数字。比如借用新出现的2、4,或者借用新出现的2、4组成的8,或者是出了原本想要消除数字之外的其他数字。
可以如果想要把现有的2048,1024,512,256,128串起来,那么操作过程可以说是几乎唯一了。因为除了现有的数字我们不能再指望新出现的数字了。
这样导致的直接问题,也是我想说的核心问题,就是侧边可以添入的最大值:
因为在游戏后期,很多数字的位置都是不能移动的,只能借由空白空间凑数字,所以就会出现这样一种情况:
后文的图都是用高大上的阿逗逼photo shop精心绘制的>_<
本来终于凑够了一个256可以向下填充,然后直接抵达4096,但是由于上一步的操作的限制,让256出现在了512的上方,并且很混蛋的新出现的2又填充在了一个很缺德的位置。所以下一步只能向上或者向下整体移动。(这才是游戏进行过程中直接导致死亡的根本问题!!)
不过我们暂时不去考虑解决方法(后面再讲),我们先假设情况没有那么糟糕,在上面两行依然有数字可以让我们进行左右操作。那么现在的问题就是如何继续进行。
一种可行的方法是填满2048,1024,512上面的所有格子,如下图:
然后上移红色部分让两个256相邻再叠加。但是这种做法在某些情况是很危险的!
这种解决办法仅适用操作后可以进行最终合并的情况,因为如果按照上图操作之后,我们就可以直接得到4096了,但是如果不能进行最终合并,就会造成一种死棋般的地步,如下图:
比如这种情况下,即使我们获得了512,那么这个512也是胎位不正的,而1024右边的位置很有可能就出现一个2或者4.
另一方面,我们看到上面三行的数字将完全错开,形成一个很相互累积的情况,这个图只是我自己绘制的,真实情况往往是上面还充斥着很多16-64之间的数字,很难彼此融合。这样基本就是宣判死刑了。
所以在前面那种情况下,我们的解决方法最好是将新出现绿色的2逐渐变大。
而这个2右出现在最右边,此时我们有两种方法让他变大,一种是左策略,一种是右策略。如下图:
但是不管是哪种策略,都有致命的缺点。先来看看右策略经常遇到的问题,如下图:
妈蛋好不容易快到头了结果又是侧面跑出来一个2,这是右策略的致命伤。
再看看左策略的致命伤:
当我们好不容易快要成功时,无奈补足了最右的2可是旁边的4也被迫补足。
所以一般来说,这种在最左或者最右向下插值不断变大的情况往往受制于运气,根据个人经验,最好的可能性也只是让绿色的2变为64,一般平均来看如果需要将绿色的位置补到32就是平均水平了。补到128就需要很大的运气成分了。
这也就是说,仅用两行空白构造的最大数字基本来说也就是局限在32以下了,否则就需要大量重复游戏期望碰到某次运气爆棚。
这也是我目前尝试过最好的情况了,再大一点要么就需要极高的人品,要么就需要大量的重复尝试,游戏本身就成了老虎机,靠拼运气,游戏本身的意义也就不大了。
这种混蛋问题出现的根本原因,就在于当我们选择了这种保持下面不动,上面持续增加的策略时,无法保证最上面一行最大的数字保留在该行的角落里。
所以这个游戏,到了8192基本就是正常人的极限中的极限了。
另一种经常遇到的问题就是:
有时会出现下面两行或者三行完全被填死,下一步只能上下移动的局面,这种情况下百分之50就是判死刑了,除非向上整体移动后,新出现的数字出现在原有阵列较小的两个数字下方才可以勉强突围。