Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/local/bin/python3.7
- # -*- coding: utf-8 -*import
- n = int(input())
- kate = 'k'
- maze = [[x for x in input()] for x in range(n)]
- k_line = int(*[maze.index(x) for x in maze if kate in x])
- k_place = maze[k_line].index(kate)
- moves = 0
- dead_end = None
- while True:
- line_break = k_line == 0 or k_line == len(maze) - 1
- place_break = k_place == 0 or k_place == len(maze[0]) - 1
- if line_break or place_break:
- break
- if k_line + 1 > len(maze) or k_place + 1 > len(maze[0]):
- break
- dead_end = True
- if maze[k_line][k_place + 1] != '#':
- maze[k_line][k_place] = '#'
- maze[k_line][k_place] = kate
- moves += 1
- dead_end = False
- if maze[k_line][k_place - 1] != '#':
- maze[k_line][k_place] = '#'
- maze[k_line][k_place - 1] = kate
- moves += 1
- dead_end = False
- if maze[k_line + 1][k_place] != '#':
- maze[k_line][k_place] = '#'
- maze[k_line + 1][k_place] = kate
- moves += 1
- dead_end = False
- if maze[k_line - 1][k_place] != '#':
- maze[k_line][k_place] = '#'
- maze[k_line - 1][k_place] = kate
- moves += 1
- dead_end = False
- if dead_end:
- break
- k_line = int(*[maze.index(x) for x in maze if kate in x])
- k_place = maze[k_line].index(kate)
- if dead_end:
- print('Kate cannot get out')
- else:
- print(f'Kate got out in {moves + 1} moves')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement