一.题目
有一个5*5的网格,其中恰好有一个格子是空的,其他格子各有一个字母。一共有4种指令:A, B, L, R,分别表示把空格上、下、左、右的相邻字母移到空格中。输入初始网格和指令序列(以数字0结束),输出指令执行完毕后的网格。如果有非法指令,应输出“This puzzle has no final configuration.”
例如,图3-5中执行ARRBBL0后,效果如图3-6所示。
二.思路
题目的输入没有讲清楚,所以我自己设置成:一行读地图,一行读操作
采用无间隔输入(除了那个空格起点),然后,我们可以采用替换的方法,就可以实现这个题目了,如果有非法指令,遇到了直接printf后return就行了。
三.代码
#include <stdio.h>
#include<string.h>
//char s[100][100]={"TRGSJ","XDOKI