Ctrl K

Трубы на плитках

Средняя
Поле tiles размером m × n выложено плитками с кусками труб. Число в клетке задаёт, какие две стороны плитки соединяет труба: | Плитка | Соединяет | |---|---| | 1 | левую и правую | | 2 | верхнюю и нижнюю | | 3 | левую и нижнюю | | 4 | правую и нижнюю | | 5 | левую и верхнюю | | 6 | правую и верхнюю | Вода может перейти из одной клетки в соседнюю, только если обе плитки открыты навстречу друг другу. Плитки поворачивать нельзя. Верните true, если вода из левой верхней клетки может дойти до правой нижней, и false иначе.
Пример 1
tiles=[[4, 3], [6, 5]] → True

Плитка 4 открыта вправо, плитка 3 справа от неё открыта влево и вниз, а плитка 5 под ней — вверх: вода доходит до правого нижнего угла.

Пример 2
tiles=[[2], [2], [2]] → True

Три вертикальные трубы одна под другой — путь сверху вниз есть.

Пример 3
tiles=[[1, 1, 2]] → False

Вода проходит две горизонтальные трубы, но вертикальная плитка 2 в конце не открыта влево — дальше не пройти.

Ограничения
  • 1 ≤ m, n ≤ 300
  • 1 ≤ tiles[i][j] ≤ 6
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиОсушение замкнутых прудов СредняяУчастки суши на карте СредняяСамый большой лесной участок СредняяПоле, разрезанное чертами СредняяСуша без выхода к краю Средняя
загружаем Python…
Вход
tiles=[[4, 3], [6, 5]]
Ожидается
True

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 80 тестов на сервере, включая скрытые.