题解 | #迷宫问题#

迷宫问题

http://www.nowcoder.com/practice/cf24906056f4488c9ddb132f317e03bc

python 深度优先,注意最后输出要是字符串,直接输出tuple会报错


while True:
    try:
        maze = []
        x = input().split()
        m,n = int(x[0]),int(x[1])
        for i in range(m):
            x = input().split()
            x = list(map(int,x))
            maze.append(x)


        def dfs(x,y,path):
            if not (0<=x<m and 0<=y<n) or maze[x][y]:
                return
            maze[x][y] = 1
            path.append([x,y])
            if x == m-1 and y == n-1:
                global res
                res = path[:]

            for nx,ny in[[x+1,y],[x-1,y],[x,y+1],[x,y-1]]:
                dfs(nx,ny,path)
            path.remove([x,y])
        dfs(0,0,[])
        #print(res)

        for i in res:
            print('(%d,%d)'%(i[0],i[1]))
    except:
        break
全部评论

相关推荐

KalznAsawind:标准的八股问烂简历,面试官碰到这种简历一般都会开始轰炸八股了。其实我一直觉得项目、实习的作用是将面试官困在你的语境中,在你的语境中跟他解释项目背景和细节,跟他battle,减少他轰炸你八股的时间,这样压力会小很多。但是你的项目是一眼无落地、无背景的包装项目,所以对方也不会去在意你的项目背景,只会针对你的项目涉及的技术栈开始轰炸八股,会增大你的压力,而你面试过不过全看你八股背的熟不熟。
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务