紫书习题3-5 谜题(Puzzle, ACM/ICPC World Finals 1993, UVa227)
有一个5*5的网格,其中恰好有一个格子是 空的,其他格子各有一个字母。一共有4种指 令:A, B, L, R,分别表示把空格上、下、左、右 的相邻字母移到空格中。输入初始网格和指令序 列(以数字0结束),输出指令执行完毕后的网 格。如果有非法指令,应输出“This puzzle has no final configuration.”
参考博客
https://www.it610.com/article/1294538636833923072.htm
#include<bits/stdc++.h>
using namespace std;
bool isLegal = true,isOver = false;//判断合法,结束
int main()
{
string tu[5],s;
int cnt=0,x,y,x2,y2,dict[4][2] = {
{
-1,0},{
1,0},{
0,-1},{
0,1}};<