← К задачам Матрица: 0/18 решено

2011. Максимальная площадь острова

Medium 4 решили
Дана сетка из нулей и единиц. Остров — кусок единиц, соединённых по стороне (вверх/вниз/влево/вправо). По диагонали клетки не соседние. Площадь острова — сколько в нём единиц. Верните площадь самого большого; если единиц нет — 0.

Соседи клетки:
    ↑
  ← 1 →   диагонали не считаются
    ↓
Два острова площади 4 — ответ 4, не 8:
1 1 0 0 0
1 1 0 0 0
0 0 0 1 1
0 0 0 1 1

Примеры:

Вход: [[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0], [0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0], [0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0], [0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0]]
Выход: 6
Объяснение: На сетке несколько островов; крупнейший занимает 6 клеток → 6.
Вход: [[0, 0, 0, 0, 0, 0, 0, 0]]
Выход: 0
Объяснение: Все клетки нули — островов нет → 0.
Вход: [[1, 1, 0, 0, 0], [1, 1, 0, 0, 0], [0, 0, 0, 1, 1], [0, 0, 0, 1, 1]]
Выход: 4
Объяснение: Два острова по 4 клетки (левый верхний 2×2 и правый нижний 2×2); берётся максимум, не сумма → 4.

Ограничения:

m == grid.length n == grid[i].length 1 <= m, n <= 50 grid[i][j] равно 0 или 1

Теги:

Матрица DFS

Комментарии (0)

Зарегистрируйтесь или войдите, чтобы оставить комментарий

Пока нет комментариев. Будьте первым!