Advertisement

问题 H: 八连通迷宫(Python)

阅读量:

题目描述

设定一个M×M(其中2\leq M\leq 9)的迷宫网格。
其中入口位于左上方格子处而出口位于右上方格子处。
且这两个位置对应的数值均为0
在迷宫内可以上下左右以及对角线方向移动八种路径选择。
当前步所在的格子如果数值为0则表示可以通过该步;
如果当前步所在的格子属于墙,则无法通行下一步。
请计算从入口到出口的所有互不重叠路径的数量,并将结果输出。
如果找不到从入口到出口的有效路径,则输出0

输入

指定第一行为一个介于1至9之间的整数值M(即1 \leq M \leq 9),以此决定迷宫的结构为M \times M网格。
这些行构成了一个由0和1元素组成的M阶方阵。

输出

收集所有从入口端到出口端且互不相同的路径,并计算这些不同路径的数量。如果无法从入口端到达对应的出口端,则结果应设为0。

样例输入 Copy

3
0 0 0
1 0 1
0 0 1

样例输出 Copy

4
和上一题一样,只是多加了几个方向,所以就不一一赘述了

复制代码
    #8联通迷宫
    n = int(input())
    mp=[]
    for i in range(n):
    a = list(map(int,input().split()))
    mp.appe

全部评论 (0)

还没有任何评论哟~