Задача 13: Максимальная площадь острова

Напишите определение функции max_area_of_island(grid), которая принимает на вход параметр:

  • grid — двумерный список, представляющий двоичную матрицу (список списков), где 0 обозначает воду, а 1 обозначает сушу.

Функция должна вернуть целое число, представляющее максимальную площадь острова. Если в матрице нет ни одного острова, вернуть 0.


Примеры

Пример 1


Ввод:

grid = [
    [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

Пояснение: Ответ не равен 11, так как остров может быть соединён только в 4 направлениях (горизонтально или вертикально).


Пример 2
Ввод:

grid = [[0,0,0,0,0,0,0,0]]

Вывод:

0

0

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