Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def laba(Maze,pozIn,pozOut):
- weight=0
- Task=[[pozIn[0],pozIn[1],pozIn[2]]]
- print(Task[0][2])
- Back=Task
- for i in range(len(Maze)*len(Maze[0])):
- weight+=1
- Task=Task[len(Task):]
- Task=Back
- Back=Back[len(Back):]
- for i in range (0,len(Task)):
- if Task[i][2]==0: print(':(')
- if Maze[Task[i][0]+1][Task[i][1]]==0:
- Maze[Task[i][0]+1][Task[i][1]]=weight
- Back.append([Task[i][0]+1,Task[i][1],1])
- if [Task[i][0]+1,Task[i][1]]==pozOut:
- return 0
- if Maze[Task[i][0]-1][Task[i][1]]==0:
- Maze[Task[i][0]-1][Task[i][1]]=weight
- Back.append([Task[i][0]-1,Task[i][1],1])
- if [Task[i][0]-1,Task[i][1]]==pozOut:
- return 0
- if Maze[Task[i][0]][Task[i][1]+1]==0:
- Maze[Task[i][0]][Task[i][1]+1]=weight
- Back.append([Task[i][0],Task[i][1]+1,1])
- if [Task[i][0],Task[i][1]+1]==pozOut:
- return 0
- if Maze[Task[i][0]][Task[i][1]-1]==0:
- Maze[Task[i][0]][Task[i][1]-1]=weight
- Back.append([Task[i][0],Task[i][1]-1,1])
- if [Task[i][0],Task[i][1]-1]==pozOut:
- return 0
- def main():
- Maze =[
- [-1,-1,-1,-1,-1,-1,-1],
- [-1, 0, 0, 0, 0, 0,-1],
- [-1, 0, 0, 0, 0, 0,-1],
- [-1, 0, 0, 0, 0, 0,-1],
- [-1, 0, 0, 0, 0, 0,-1],
- [-1,-1,-1,-1,-1,-1,-1]
- ]
- pozIn=[2,1,0]
- pozOut=[4,4]
- laba(Maze,pozIn,pozOut)
- Maze[pozIn[0]][pozIn[1]]=0
- for i in range(0,len(Maze)):
- print (Maze[i])
- if __name__ == '__main__':
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement