#XSS202408. 迷宫

迷宫

题目描述

给定一个大小为 n×mn\times m 的地图,地图上有一些表示:

B 为起点, E 为终点。

. 为空地,可以移动。

# 为墙壁,不可移动到此格

最开始 AliceAlice 处于起点,只能进行上下左右四个方向移动,但是不能移动到 # 的格子里,可以重复移动到某一格子里。

接下来会有 qq 次询问,每次询问给定一个数字 kk ,请问可以恰好使用 kk 次移动,使得 AliceAlice 从起点恰好移动到达终点。

如果可以,则输出 “YESYES” (没有双引号),否则输出 “NONO” (没有双引号)。

输入格式

第一行为 nnmm ,表示地图的大小。

接下来的 nn 行,每一行有 mm 个字符,表示地图的每一个格子。

接下来一行是 qq ,表示询问的个数。

接下来 qq 行,每一行有一个数字 kk ,表示询问的数字。

2n,m10002\leq n,m \leq 10001q1061\leq q \leq 10^61k10121\leq k \leq 10^{12}

输出格式

一共输出 qq 行。

对于一次询问数字 kk ,在一行输出 “YESYES” 或者 “NONO” 。

样例

5 5
B##.E
.##.#
.....
.....
#####
2
8
9
YES
NO

样例解释

对于第一个询问 k=8k=8

我们可以从起点向下走 22 格,然后向右走 33 格,然后向上走 22 格,然后向右走 11 格就到达了终点,刚好使用了 88 步。

对于第二个询问 k=9k=9

我们发现无法仅用 99 步到达终点。