题目描述
有一个N*M的迷宫,包括起点S,终点D,墙X和地面.,0秒时主人公从S出发,每秒能走到四个与其相邻的位置中的一个,且每个位置被行走之后都不能再次走入,问是否存在这样一条路径使主人公在T秒时刚好走到D。
样例输入
样例输出
NO
YES
题目分析
1、不设mark标记数组,则在运行过程中不断的将不可能在结果集中的位置标记为“墙”。
2、若起点的坐标和的奇偶性和终点的坐标和不同,但是需要经过偶数秒到达,显然这是不可能的。在这种情况下,整棵解答树都不可能存在我们所需的状态。
代码
#include <iostream>
using namespace std;
char maze[8][8]; //保存地图信息
int n, m, t; //地图大小n*m,从起点到终点在t秒刚好走到
bool success;
int go[][2] = {
1,0,
-1,0,
0,1,
0,