Ctrl K
Курс · шаг 47 из 79К шагуДальше

Участки суши на карте

Средняя
Карта местности задана прямоугольной сеткой terrain из m строк и n столбцов. Каждая клетка — строка '1' (суша) или '0' (вода). Участок суши — это группа клеток '1', связанных между собой через соседей по горизонтали или вертикали; диагональное касание не считается. За пределами сетки везде вода. Верните количество отдельных участков суши.
Пример 1
terrain=[['1', '0', '1'], ['1', '0', '0'], ['0', '1', '1']] → 3

Три участка: два «1» в левом столбце, одиночная «1» в правом верхнем углу и пара «1» в нижней строке. Клетки, касающиеся только по диагонали, не объединяются.

Пример 2
terrain=[['1', '1', '1'], ['1', '0', '1'], ['1', '1', '1']] → 1

Кольцо из суши вокруг одной клетки воды — это один участок.

Пример 3
terrain=[['0', '0']] → 0
Ограничения
  • 1 ≤ m, n ≤ 300
  • Во всех строках одинаковое число клеток
  • Каждая клетка — '0' или '1'
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиОсушение замкнутых прудов СредняяСамый большой лесной участок СредняяПоле, разрезанное чертами СредняяСуша без выхода к краю СредняяМаршрут с самым высоким узким местом Средняя
загружаем Python…
Вход
terrain=[['1', '0', '1'], ['1', '0', '0'], ['0', '1', '1']]
Ожидается
3

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