plan из m строк и n столбцов: 0 — свободная клетка, 1 — стена, которую можно снести. Ходить можно вверх, вниз, влево и вправо, только по свободным клеткам.
Вы стоите в клетке (0, 0) и хотите попасть в (m - 1, n - 1). Верните наименьшее число стен, которые нужно снести, чтобы такой путь появился.plan=[[0, 1, 0], [0, 1, 0], [0, 1, 0]] → 1
Средний столбец целиком занят стенами, так что одну из них придётся снести — и одной достаточно.
plan=[[0, 0, 1], [1, 0, 1], [1, 0, 0]] → 0
По свободным клеткам (0, 0) → (0, 1) → (1, 1) → (2, 1) → (2, 2) можно пройти, ничего не ломая.
plan=[[0, 1, 1, 0]] → 2
Коридор в одну строку: обе стены стоят на единственном пути.
m, nm · n ≤ 10⁵plan[i][j] равно 0 или 1plan[0][0] = plan[m - 1][n - 1] = 0plan=[[0, 1, 0], [0, 1, 0], [0, 1, 0]]
1
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 60 тестов на сервере, включая скрытые.