题解 | #迷宫问题#
迷宫问题
https://www.nowcoder.com/practice/cf24906056f4488c9ddb132f317e03bc
n, m = map(int, input().split())
maze = []
for i in range(n):
maze.append([int(i) for i in input().split()])
route = []
def dfs(i, j):
if maze[i][j] == 1:
return False
if i == n-1 and j == m-1:
return True
maze[i][j] = 1
for x, y in ((i-1,j), (i+1,j), (i,j-1), (i,j+1)):
if 0 <= x <= n-1 and 0 <= y <= m-1 and dfs(x, y):
route.append((x,y))
return True
dfs(0,0)
for i in [(0,0)] + route[::-1]:
print(f'({i[0]},{i[1]})')
查看11道真题和解析