#include <stdio.h>
int sign = 0, MAZE[20][20], m, n, IN_m, IN_n, OUT_m, OUT_n;
void SearchMaze (int x, int y);
int main ()
{
int i, j;
scanf ("%d%d", &m, &n);
scanf ("%d%d", &IN_m, &IN_n);
scanf ("%d%d", &OUT_m, &OUT_n);
for (i = 0; i < m; i++)
for (j = 0; j < n; j++)
scanf ("%d", &MAZE[i][j]);
SearchMaze (IN_m, IN_n);
if (sign == 1) printf ("Yes\n");
else printf ("No\n");
return 0;
}
void SearchMaze (int x, int y)
{
if (x == OUT_m && y == OUT_n) sign = 1;
else if (x < 0 || x >= m || y < 0 || y >= n || MAZE[x][y] != 0)
{
return ;
}
else
{
MAZE[x][y] = -1;
SearchMaze (x - 1, y);
SearchMaze (x + 1, y);
SearchMaze (x, y + 1);
SearchMaze (x, y - 1);
}
return ;
}
[NOJ][算法实验一]1141.走迷宫
最新推荐文章于 2020-11-21 18:08:40 发布