2096: 连连看

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:5 解决:1

题目描述

有时大型游戏玩腻味了,小Z也会玩玩弱智级的小游戏,比如连连看。但小Z眼力不行,常常得分很低。于是,他找到了你,希望你能帮他找出一种获胜方案。

连连看的游戏规则很简单:玩家可以将 2 个相同图案的牌连接起来,连接线不多于 3 条线段,就可以成功将两个牌消除。将游戏界面上的牌全部消除掉,玩家就胜利了。

输入

第一行为两个正整数mn,表示连连看游戏的矩阵大小。

接下来的m行,每行n个英文大写字母(为了计算方便,只用A~E五个字母),表示牌的种类,相同字母表示同种牌。

输出

若能获胜,则输出共一行,包括m×n/2个英文大写字母,第i个字母表示第i次消除的牌的种类。若有多解,输出字典顺序最小的解。

若不能获胜,则输出共一行,包括字符串“Game over.”。

样例输入 复制

2 1
A
A

样例输出 复制

A

提示

输入输出样例2

game.in

game.out

2 1

A

B

Game over.

 

【限制】

100%的数据满足:m×n<=12