“俄罗斯方块”之数学辨析
2014-04-29林革
说起“俄罗斯方块”这个入门级游戏,也许如今许多网游迷并不熟悉,但对于年龄稍长的或骨灰级的玩家而言,当初迷恋这个游戏的程度,用目不转睛和废寝忘食来形容亦不为过,由此可见“俄罗斯方块”面世后的魅力和诱惑.这种结果甚至出乎游戏制作者——电脑工程师阿列克谢·帕基特诺夫的预料,因为他之前开发的电脑小游戏,无一例外遭受冷遇.1984年夏天他又琢磨起“俄罗斯方块”,但完成制作后仍缺乏信心.
事实令他瞠目结舌——“俄罗斯方块”在莫斯科迅速流行,并在此后的30年里风靡全球.它被移植到了几乎所有的电脑系统和游戏平台上,包括MP3、MP4、手机、电视,最近甚至有人把它组装在了T恤上.借助这些日益普及的传播工具,“俄罗斯方块”很快成为无人不知无人不玩的经典游戏.尽管这个曾广为流传的游戏现在已淡出玩家视线,但细细辨析并研究其中蕴含的一些数据规律,以及相关的数学问题,仍具追思意味和现实意义.
俄罗斯方块的游戏空间是一个宽为10、高为20的矩形.游戏里共有7种方块(如图)不断随机下落,根据它们的形状分别命名为I, J, L, O, S, T, Z.玩家需要调整变换方块使之填放到合适位置,被填满的1行至4行将自动消除.一次性消除的行数越多,得分就越高.
在游戏过程中,一次消去1行得100分…①,一次消去2行得300分…②,一次消去3行得600分…③,一次消去4行得1000分…④,从这些数据中可以发现,在各种情况下,每行消去后的得分并不是恒定不变的,换句话说,一次的得分与消掉的行数的比有所变化.①式中的得分与消掉的行数的比是100∶1;②式中的得分与消掉的行数的比是150∶1;③式中的得分与消掉的行数的比是200∶1;④式中的得分与消掉的行数的比是250∶1.显然它们的比值是呈递增形式的,而且依次增值的数额是50.这是从单行得分数上去分析的,如果我们从总得分上来分析,可发现100、300、600、1000的变化规律是300-100=200,600-300=300,1000-600=400,相邻两个数间的差额也是呈递增形式的,而且依次增值的数额是100.这两条规律都说明同一个事实:如果一次聚积到2行、3行,甚至是4行消掉的话,那得分会比一行一行消去的分数要多得多.此游戏就是鼓励玩家尽可能拼成完整的几行一块儿消去,这样积分增加的速度会大大提高.这就是老玩家经常大比分获胜的诀窍所在.
而另一个令人沮丧的事实是:随着被消除总行数的增加,方块下落速度会越来越快.一旦某个方块放置后超出了场地高度界限,游戏便告结束.无论新老玩家,有多少窍门或熟练手法,到最后都无法避免手忙脚乱左右不能顾及的局面,只能在摇头叹息中从头再来.由此,“俄罗斯方块”引出的第一个数学问题是:如果玩家的技术足够高,游戏是否永远也不会结束?1988年,约翰?布鲁托斯基的一篇论文指出,若“S”型和“Z”型方块以适当的间隔交替出现时,游戏区域中将不可避免地出现越来越多无法消去的行,最终导致游戏结束.虽然这种情况发生的概率并不高,但考虑到问题的假设——游戏的无限操作,这样的情形肯定会出现,因此理论上问题的答案是否定的.
如果说以上解释略显模糊,那么下面问题的答案就非常确定.“俄罗斯方块”有7种方块,每种方块都由4个小方格组成,即它们的总面积为28.如果每块只能用一次,并允许翻转,请问你能用它们拼出4×7的长方形(如图1)吗?
对这个问题的巧妙解答可借助染色策略.即将图1的每个小方格用黑白两色相间染色(如图2) ,黑白小方格的数量相同,各14个,这就表明,七种俄罗斯方块如果能够拼成图2,那么它们盖住的黑白方格数必须相等.而对于游戏中7种俄罗斯方块,稍加试验可知:I, J, L, O, S, Z无论如何摆放,都各盖住两个黑色小方格与两个白色小方格,但“T”型方块无论如何摆放,都一定盖住一个黑色小方格和三个白色小方格或一个白色小方格和三个黑色小方格.正由于“T”型方块所占的黑白格子个数始终不等,才导致这7种俄罗斯方块盖住的小方格与白色小方格的数量不可能相等,这就说明用7种俄罗斯方块拼成图(1)是不可能的.
不难理解的是,7个俄罗斯方块可以拼成图3,因为特殊的“T”型方块对应放在了特殊的位置——突出的一块.如此一来,这7种俄罗斯方块恰好能构成一个平面镶嵌(如果一组几何图形能够既无重叠又无空缺地填满整个平面,我们就把它称作一种平面镶嵌).
也正因为此,许多家装公司的设计师别出心裁,把墙砖或地砖做成了图3平铺,巧妙运用“俄罗斯方块”给居家生活带来几分创意(图4).
类似的创意还体现在用“俄罗斯方块”构成的各种趣味拼图.比如:如何把6个“L”形状的方块摆放在一起,使得每个“L”恰好都和另外三个“L”相邻?(答案如图5);怎样用奇数个“L”摆成一个轴对称图形?(如图6).这些看起来极易上手,但实际操作起来却困难重重的拼图,充分体现了数学思维与空间想象的巧妙新颖.
(作者单位:江苏省扬州职业大学师范学院)