题目背景
给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过。给定起点坐标和终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案。在迷宫中移动有上下左右四种方式,每次只能移动一个方格。数据保证起点上没有障碍。
题目描述
无
输入格式
第一行N、M和T,N为行,M为列,T为障碍总数。第二行起点坐标SX,SY,终点坐标FX,FY。接下来T行,每行为障碍点的坐标。
输出格式
给定起点坐标和终点坐标,问每个方格最多经过1次,从起点坐标到终点坐标的方案总数。
输入输出样例
输入
2 2 1
1 1 2 2
1 2
输出
1
请问我的代码错在哪
N ,M ,T =map(int,input().split())
dianzhen =[]
for i in range(1,N+1):
for j in range(1,M+1):
dianzhen.append((i,j))
x0, y0, x1 ,y1 = map(int,input().split())
obstacle = []
for i in range(T):
x, y =map(int,input().split())
obstacle.append((x,y))
n = 0
Flag = True
def shensou(a, b):
if a == x1 and b == y1:
global n,Flag
n += 1
Flag = False
print(n)
if Flag:
if (a,b) in dianzhen not in obstacle:
for x,y in (0,1),(1,0),(0,-1),(-1,0):
a +=x
b +=y
shensou(a,b)
a -= x
b -= y
shensou(x0,y0)
print(n)