主页 讨论版 问题 名次 状态 统计

请自觉遵守比赛规则,违者严惩,不接受求情!

问题 D: Puzzle V8

问题 D: Puzzle V8

时间限制:1000 ms 内存限制:128 MB
提交:98 解决:16
[ 提交][ 状态][ 讨论版]

题目描述

V8NOIP2011后迷上了游戏Mayan Puzzle。游戏界面是一个75列的棋盘,上面堆放着一些方块,方块不能悬空堆放,即方块必须放在最下面一行,或者放在其他方块之上。游戏通关是指在规定的步数内消除所有的方块,消除方块的规则如下:

1、每步移动可以且仅可以沿横向(即向左或向右)拖动某一方块一格:当拖动这一方块时,如果拖动后到达的位置(以下称目标位置)也有方块,那么这两个方块将交换位置;如果目标位置上没有方块,那么被拖动的方块将从原来的竖列中抽出,并从目标位置上掉落(直到不悬空);

2、任一时刻,如果在一横行或者竖列上有连续三个或者三个以上相同颜色的方块,则它们将立即被消除。注意:如果同时有多组方块满足消除条件,几组方块会同时被消除。

3、方块消除之后,消除位置之上的方块将掉落,掉落后可能会引起新的方块消除。注意:掉落的过程中将不会有方块的消除;方块消除之后,消除位置之上的方块将掉落,掉落后可能会引起新的方块消除。

为了刷统计数据,V8希望确定自己的方案准确无误后,再实际移动方块。请你写一个程序帮V8判断他的方案是否准确无误。

输入

多组数据(最多75组),每组数据中间用空行隔开。

每组数据,第一行一个正整数n,表示V8的方案的移动步数。
之后5行,描述7*5的游戏界面。每行若干个整数,每两个整数之间用一个空格隔开,每行以一个0结束,自下向上表示每竖列方块的颜色编号(颜色不多于10,1开始顺序编号,相同数字表示相同颜色)
之后n行,每行包含3个整数x,y,g,表示一次移动,每两个整数之间用一个空格隔开,其中(x,y)表示要移动的方块的坐标,g表示移动的方向,1表示向右移动,-1表示向左移动。注意:游戏界面左下角的坐标为(0,0)

输入数据保证初始棋盘中没有可以消除的方块。

对于100%的数据,有0<n≤60x<50y<7|g|=1

输出

对于每组数据输出1行,若V8的方案包含非法移动(试图移动不存在的方块,或者试图把方块移到游戏界面外),输出”Runtime Error”(不含引号,下同);若V8的方案是合法的,但未能消除所有方块,输出”Wrong Answer”;若V8的方案是合法的,且消除了所有方块,输出”Accepted”

样例输入

3 1 0 2 1 0 2 3 4 0 3 1 0 2 4 3 4 0 2 1 1 3 1 1 3 0 1 1 1 0 1 0 0 1 0 0 2 0 1 1 1 0 1 0 0 1 0 0 3 0 1

样例输出

Accepted Runtime Error Wrong Answer

提示

对于第一组样例,游戏过程如上图所示。依次移动的三步是:(2,1)处的方格向右移动, (3,1)处的方格向右移动, (3,0)处的方格向右移动,最后可以将棋盘上所有方块消除。
对于第二组样例,V8试图移动位于(2,0)的方格,然而这里并没有方块。
对于第三组样例,V8把方向搞反了,未能消除所有方块。

[ 提交][ 状态][ 讨论版]
Baidu
map