Ctrl K

Самый дешёвый холм

Лёгкая
Дан массив heights — высоты точек вдоль тропы. Назовём **холмом** три позиции i < j < k, у которых средняя точка строго выше обеих крайних: heights[i] < heights[j] и heights[k] < heights[j]. Крайние точки не обязаны стоять вплотную к средней. Верните наименьшую возможную сумму heights[i] + heights[j] + heights[k] по всем холмам или -1, если ни одного холма нет.
Пример 1
heights=[7, 2, 9, 4, 6, 1] → 7

Тройка с индексами 1, 3, 5: 2 < 4 > 1, сумма 7. Меньше не найти.

Пример 2
heights=[1, 2, 3, 4] → -1

Высоты только растут, правее любой точки нет никого ниже неё — холма нет.

Пример 3
heights=[5, 5, 5, 6, 5] → 16
Ограничения
  • 3 ≤ len(heights) ≤ 50
  • 1 ≤ heights[i] ≤ 50
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПара с заданной суммой ЛёгкаяСжать повторы в отсортированном массиве ЛёгкаяВыкинуть лишнее значение ЛёгкаяМесто на отсортированной полке ЛёгкаяПрибавить единицу к числу из цифр Лёгкая
загружаем Python…
Вход
heights=[7, 2, 9, 4, 6, 1]
Ожидается
7

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