第一行输入两个正整数
。
接下来的
行每行输入一个长为
的仅包含字符 `.` 与 `#` 的字符串,描述整个迷宫。
保证起点
和终点
均为空地。
若旺仔哥哥可以走到终点,则输出单词
;否则输出
。
3 5 .##.# .#... ...#.
Yes
路线如下:
n, m = map(int, input().split())
grid = [list(input().strip()) for _ in range(n)]
dx = [0, 1, -1, 0]
dy = [1, 0, 0, -1]
def dfs(x, y):
if x == n-1 and y == m-1:
return True
if not (0 <= x < n and 0 <= y < m and grid[x][y] == '.'):
return False
grid[x][y] = '#' # 标记已访问
for i in range(4):
xx, yy = x + dx[i], y + dy[i]
if 0 <= xx < n and 0 <= yy < m and grid[xx][yy] == '.':
if dfs(xx, yy):
return True
return False
print('Yes' if dfs(0, 0) else 'No')