深度优先遍历: def dfs(pb, i, j, n, res): if j == n-1: if i == 1: res[0] += 1 return for ne in get_neigh(i, j, n): if pb[ne[0]][ne[1]]: pb[ne[0]][ne[1]] == False dfs(pb, ne[0], ne[1], n, res) pb[ne[0]][ne[1]] == True def get_neigh(i, j, x): neigh = [] if j+1 < x: neigh.append([i, j+1]) if j+1 < x and i == 0: neigh.append([i+1, j+1]) if j+1 < x and i == 1: neigh.append([i-1, j+1]) return neigh if __name__ == &#39;__main__&#39;: n = int(input()) p = [] p.append(list(input())) p.append(list(input())) pb = [[True for i in range(n)] for i in range(2)] for i in range(2): for j in range(n): if p[i][j] != &#39;.&#39;: pb[i][j] = False pb[0][0] = False res = [0] dfs(pb, 0, 0, n, res) res = res[0] if res[0] > 0 else -1 print(res)
点赞 评论

相关推荐

瑞雪兆丰年_:可以贴个超级大的校徽,以防HR眼拙
点赞 评论 收藏
分享
星期一的大老师:项目描述 和 技术栈单开一栏;八股文:算法与数据结构,计算机网络一定要写,操作系统不了解可以不写;Linux命令,Git,Docker基础命令和基本使用一定要写,要有实际使用场景的解决经验;项目的八股文上:redis 解决 缓存雪崩,缓存击穿,缓存穿透的解决方案,一个问题的不同方案可以一起用,不需要重复在两个项目写。第二个项目换一个。小厂可以投一投
投了多少份简历才上岸
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务