四、 【编程|30分】小包的棋盘游戏
题目描述
小包喜欢玩益智游戏,今天他找到了这样一款游戏:一个n'm大小的棋盘,上面有一些格子是空的;还有无数个1*2大小的木片,刚好放入棋盘上1*2大小的空着的位置。游戏的目标就是用这些木片把棋盘上的空位填满。在玩了几次后,小包觉得不过瘾,于是决定自己做几个。但他认为这种益智游戏必须有唯一解才完美,于是找你帮忙判断是否有唯一解。
输入描述:
第一行两个数n,m:代表棋盘大小为n*m;
接下来是一个n*m的矩阵,代表棋盘的样子,其中"."代表空着的格
子,"#"代表非空的格子。
输出描述:
若有唯一解,则输出解,其中:"#"代表棋盘中非空的格子,"<>"代表横向放置的木片的左边格子和右边格子,"^v"代表纵向放置的木片的上方格子和下方格子。
否则,输出"-1"。
示例1 输入输出示例仅供调试,后合判题数据一般不包含示例
输入
1 1 . |
输出
-1 |
说明
放不了1*2的木片,无解 |
示例2 输入输出示例仅供调试,后合判题数据一般不包含示例
输入
2 2 . . . . |
输出
-1 |
说明
有两种解,(图片上1*2大小有颜色的长方形代表摆放的木片,背景1*1的方块代表棋盘) |
示例3 输入输出示例仅供调试,后合判题数据一般不包含示例
输入
2 3 . . . . # # |
输出
^<> v## |
说明