俄罗斯4方块有7种,那么5方块呢?
1. 熟知的俄罗斯方块
· 经典游戏中,从天而降的7种类型
· 消除镜面重复的5种类型
· 考虑到方块的翻转
于是有19种情形,如上图。为什么不是4x7=28种呢?举个例子吧,田字格无论怎么翻转还是田字格,在进行充分翻转后,排除掉重复的就只有19种。
2. 问题的引入与解决思路
· 描述方式
我们暂且称,经典俄罗斯方块为m=4的四连通方块。接下来我们想讨论,m=5甚至更大时的情形。
· 枚举方法的困难
以m=4举例,一一列出俄罗斯方块的所有类型,很容易漏掉。列出考虑翻转的所有类型时,又容易重复。
· 一种基于生长的解决方法
为了不漏掉每一种可能,我们直接试着由m=1(即一个方块),慢慢在平面上向四个方向生长,得到m=2的情况,m=3的情况……
为了去除重复,我们采用做标记的方法,只存入非重复的元素。
3. 结果(m=2,3,4,5,6,7)
- 俄罗斯m方块,消除镜面重复的情形(此情形也称为:长L短L不区分)
- · 俄罗斯m方块的情形(m方块时,下落的图形)
- · 俄罗斯m方块考虑翻转的情形