5809. Самое дальнее место в ряду
Medium
0 решили
В одном ряду кинотеатра места заданы массивом
Сядьте на свободное место так, чтобы расстояние до ближайшего занятого было как можно больше. Расстояние между местами
В ряду есть хотя бы одно свободное место и хотя бы одно занятое. Верните это максимальное расстояние.
seats. 1 — место занято, 0 — свободно. Места пронумерованы с нуля слева направо.Сядьте на свободное место так, чтобы расстояние до ближайшего занятого было как можно больше. Расстояние между местами
i и j — это |i − j|: соседние места дают 1.В ряду есть хотя бы одно свободное место и хотя бы одно занятое. Верните это максимальное расстояние.
Примеры:
Вход:
[1, 0, 0, 0, 1, 0, 1]
Выход:
2
Объяснение: Место с индексом 2 одинаково далеко от зрителей на 0 и на 4: расстояние 2. Остальные свободные места ближе к кому-то из зрителей.
Вход:
[1, 0, 0, 0]
Выход:
3
Объяснение: Зритель один, на индексе 0. Крайнее правое место даёт расстояние 3.
Вход:
[0, 0, 0, 1]
Выход:
3
Объяснение: Зритель на индексе 3. Крайнее левое место даёт расстояние 3.
Ограничения:
2 <= seats.length <= 10^5
seats[i] равен 0 или 1
в ряду есть хотя бы один 0 и хотя бы один 1
Решите эту задачу в браузере
Создайте бесплатный аккаунт — редактор Python и Java, проверка на тестах за секунды.
Комментарии (0)
Зарегистрируйтесь или войдите, чтобы оставить комментарий
Пока нет комментариев. Будьте первым!