第三题试着写了一下,不知道对错 import sys import copy m,n=list(map(int,sys.stdin.readline().strip().split())) num=[] for i in range(m):     num.append(list(map(int,sys.stdin.readline().strip().split()))) print(num) def dfs(x,y,num,res):     if num[x][y]==1:         return     if num[x][y]==4:         return     if num[x][y]==3 and [x,y] not in res:         res.append([x,y])         dfs(x,y,num,res)         return     direction=[(1,0),(-1,0),(0,1),(0,-1)]     num[x][y]=4     for dx,dy in direction:         newx,newy=dx+x,dy+y         if newx>=0 and newx<m and newy>=0 and newy<n:             dfs(newx,newy,num,res)     return res res=[] for i in range(m):     for j in range(n):         if num[i][j]==2:             numcopy=copy.deepcopy(num) #复制一份,第一个dfs的时候防止重复循环会把走过的格子改成4             res.append(dfs(i,j,numcopy,[])) count=0 for i in res[0]:     if i in res[1]:         count+=1 print(count)