
Signpost
Эта миссия является адаптацией игры "Указатель" (из коллекции головоломок Саймона Тэтхема ). Если вы не знакомы с этой игрой, или просто хотите поиграть, то вам сюда .
Вы на прямоугольной сетке. Вам предстоит найти путь, чтобы пройти по всей сетке, следуя указанным направлениям. Начало пути и конец пути имеют порядковые номера шагов равные 1 и len(grid)*len(grid[0]) соответственно. Некоторые клетки так же могут иметь порядковые номера шагов в вашем пути, менять их НЕ допускается.
Числа означают порядковые номера шагов в пути, начиная с 1. Например, поле с номером 9 указывает, что это поле является девятым в пути.
Пустые поля представлены нулями. Возможные направления: север 'N', северо-запад 'NW', запад 'W', юго-запад 'SW', юг 'S', юго-восток 'SE', восток 'E', северо-восток 'NE' и ничего ''(конец пути).
Вам предстоит вернуть заполненную сетку, представляющую собой путь.
[[1, 0, 0, 0, 0], (('SE', 'E' , 'SW', 'S' , 'S' ), [[ 1, 13, 3, 14, 21], [0, 0, 9, 0, 18], ('E' , 'W' , 'S' , 'NE', 'SW'), [ 8, 7, 9, 20, 18], [0, 0, 0, 0, 0], ('S' , 'N' , 'N' , 'N' , 'S' ), ===\ [ 4, 6, 2, 19, 22], [0, 0, 0, 0, 0], ('NE', 'N' , 'NE', 'SE', 'W' ), ===/ [ 5, 12, 17, 24, 23], [0, 0, 0, 0, 25]] ('NE', 'NE', 'W' , 'W' , '' )) [11, 16, 10, 15, 25]]
Входные данные: Список, состоящий из списков, содержащих целые числа, и кортеж, состоящий из кортежей, содержащих строки.
Выходные данные: Список (или кортеж), состоящий из списков (или кортежей), содержащих целые числа.