Problem6054--逃离迷宫

6054: 逃离迷宫

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

给定一个 $m \times n$($m$ 行,$n$ 列)的迷宫,迷宫中有两个位置,gloria 想从迷宫的一个位置走到另外一个位置,当然迷宫中有些地方是空地,gloria 可以穿越,有些地方是障碍,她必须绕行,从迷宫的一个位置,只能走到与它相邻的 $4$ 个位置中。当然在行走过程中,gloria 不能走到迷宫外面去。
令人头痛的是,gloria 是个没什么方向感的人,因此,她在行走过程中,不能转太多弯了,否则她会晕倒的。
我们假定给定的两个位置都是空地,初始时,gloria 所面向的方向未定,她可以选择 $4$ 个方向的任何一个出发,而不算成一次转弯。gloria 能从一个位置走到另外一个位置吗?

Input

第 $1$ 行为一个整数 $t\ (1 ≤ t ≤ 100)$,表示测试数据的个数,接下来为 $t$ 组测试数据,每组测试数据中,
第 $1$ 行为两个整数 $m,\ n\ (1 ≤ m,\ n ≤ 100)$,分别表示迷宫的行数和列数,
接下来 $m$ 行,每行包括 $n$ 个字符,其中字符 '.' 表示该位置为空地,字符 '*' 表示该位置为障碍,输入数据中只有这两种字符,
每组测试数据的最后一行为 $5$ 个整数 $k,\ x_1,\ y_1,\ x_2,\ y_2\ (1 ≤ k ≤ 10,\ 1 ≤ x_1,\ x_2 ≤ n,\ 1 ≤ y_1,\ y_2 ≤ m)$,其中 $k$ 表示 gloria 最多能转的弯数,$(x_1,\ y_1),\ (x_2,\ y_2)$ 表示两个位置,其中 $x_1,\ x_2$ 对应列,$y_1,\ y_2$ 对应行。

Output

每组测试数据对应为一行,若 gloria 能从一个位置走到另外一个位置,输出 “yes”,否则输出 “no”。

Sample 1 Input

2
5 5
...**
*.**.
.....
.....
*....
1 1 1 1 3
5 5
...**
*.**.
.....
.....
*....
2 1 1 1 3

Sample 1 Output

no
yes

HINT

题目来源:HDU 1728

Source/Category

基础算法 4.100.BFS