Контейнер с наибольшим количеством воды
Medium
Дан массив высот вертикальных линий на позициях 0..n−1. Выберите две линии так, чтобы контейнер с водой имел максимальную площадь: ширина = расстояние между индексами, высота = минимум двух высот.
высоты: 1 8 6 2 5 4 8 3 7 площадь между линиями = (j − i) × min(h[i], h[j])
Примеры:
Вход:
[1, 8, 6, 2, 5, 4, 8, 3, 7]
Выход:
49
Объяснение: Пара индексов 1 и 8 (высоты 8 и 7): ширина 7, высота min(8,7)=7 → площадь 49 — максимум.
Вход:
[1, 1]
Выход:
1
Объяснение: Единственная пара: индексы 0 и 1, высоты 1 и 1 → площадь 1×1 = 1.
Вход:
[4, 3, 2, 1, 4]
Выход:
16
Объяснение: Крайние линии высоты 4 на расстоянии 4: 4×4 = 16; внутренние пары дают меньше.
Ограничения:
2 <= height.length <= 10^5
0 <= height[i] <= 10^4
Комментарии (0)
Войдите, чтобы оставить комментарий
Пока нет комментариев. Будьте первым!