Найти в Дзене
10,3 тыс подписчиков

💡Задача: Змеи и лестницы


Условие: дается доска с целочисленной матрицей n x n, где ячейки помечены от 1 до n2 в стиле бустрофедона, начиная с нижнего левого края доски (т.е. доска [n - 1] [0]) и чередуя направление каждой строки.

Вы начинаете с квадрата 1 на доске. В каждом ходе, начиная с квадратного поворота, выполняйте следующее:

Выберите целевой квадрат рядом с меткой в диапазоне [curr + 1, min(curr + 6, n2)].

Если рядом есть змея или лестница, вы должны перейти к месту назначения этой змеи или лестницы. В противном случае вы переходите к следующему.
Игра заканчивается, когда вы достигаете квадрата n2.

Верните наименьшее количество ходов, необходимых для достижения квадрата n2. Если добраться до квадрата невозможно, верните значение -1.

Пример:

Ввод: board = [[-1,-1,-1,-1,-1,-1],[-1,-1,-1,-1,-1,-1],[-1,-1,-1,-1,-1,-1],[-1,35,-1,-1,13,-1],[-1,-1,-1,-1,-1,-1],[-1,15,-1,-1,-1,-1]]
Вывод: 4

Ввод: board = [[-1,-1],[-1,3]]
Вывод: 1

Около минуты