小z刚刚小学毕业,他准备以玩游戏度过这个短暂的假期,找了许多游戏,他发现俄罗斯方块最好玩,但由于
小z比较笨,只能玩简单版的俄罗斯方块。
简单的俄罗斯方块规则如下:
有一个横为 6,高为 7 的区域(如下图),各种类型的方块将从上部掉落。
只有三种类型的方块,分别是
Type1:
Type2:
Type3:
玩家可以做的操作有:旋转方块,以格子为单位左右移动方块。
方块移到区域最下方或是着地到其他方块上无法移动时,就会固定在该处。
当区域中某一行横向格子全部由方块填满,则该行会消失。
当方块堆到区域之上,则游戏结束。
注意:所有方块都会在下降到局域内前进行旋转和平移,不能在区域内进行操作,也就是相当于旋转和平
移好的方块直接落进区域内。
游戏中会有 n 个方块掉落,当 n 个方块放置结束或者方块超出区域之上,则游戏结束。
由于 小z太笨了,需要你算出最多消除的行数。
你能帮助他吗?
输入描述:
第一行包含一个整数 n,表示掉落的方块个数。
第二行有 n 个整数,每个整数 type 代表掉落的方块种类(种类按照游戏规则,即 type=1 代表一个 1*4 的方块)。
输出描述:
一个数 ans,代表最多的消除行数。
备注:
数据范围
对于 10%的数据,保证 type = 1.
对于另 10%的数据,保证 type = 2.
对于 100%的数据, n <= 10。