王子救公主
描述
美丽的公主被可恶的大魔王抓走了,王子动用全国的力量得知,公主被大魔王抓走放进一个迷宫里面。由于全国范围内只有王子自己可以翻越一层迷宫的城墙,所以王子便自己一人走上了拯救公主的路途。碰巧的是大魔王出去了,迷宫也不大。王子可以直接和公主对话,于是两个人便开始相互靠近。王子救公主心切一次可以走两步(所以就可以翻过中间的一层城墙,当然为了题目简单,规定王子一次也只能走两步),公主柔弱一次只能走一步。问在这个迷宫中王子是否可以救出公主(王子可以带公主一起翻墙)。
输入
第一行输入两个整数 n(1 ≤ n ≤ 100), m(1 ≤ m ≤ 100)表示迷宫的行和列。
然后有一个 n × m 的地图,地图由’.’、’#’、‘w’、‘g’这四个部分组成。’.‘表示可以通行的路,’#'表示迷宫的墙,'w’表示王子开始所在的位置,'g’表示公主开始所在的位置。
输出
输出王子是不可以救出自己的公主,如果可以输出"yes",否则输出"no"。
输入样例 1
1 8
w…#.g
输出样例 1
yes
这个题题目中给了两个任务的路线,因此,用两个DFS来标记他们的路线。
- 王子的路线从一次走两步的过程
bool dfs(){//用布尔类型来判断条件
queue<node> tot;
if(vis[z.x][z.y]==1)return