heights и число span. Индекс i назовём точкой долины, если:
- span ≤ i < len(heights) − span;
- span значений прямо перед i идут по невозрастанию (каждое следующее не больше предыдущего);
- span значений прямо после i идут по неубыванию (каждое следующее не меньше предыдущего).
Само значение heights[i] в проверке не участвует.
Верните все точки долины в порядке возрастания.heights=[5, 4, 4, 2, 3, 6, 6, 1], span=2 → [2, 3, 4]
Индекс 2: слева [5, 4] не растёт, справа [2, 3] не убывает. Индекс 3: [4, 4] и [3, 6]. Индекс 4: [4, 2] и [6, 6]. Индекс 5 не подходит: слева [2, 3] растёт.
heights=[1, 2, 3], span=1 → [1]
Единственный кандидат — индекс 1, но слева от него [1], справа [3]; оба блока из одного элемента, так что индекс 1 подходит.
heights=[3, 4, 2, 5], span=2 → []
При span = 2 индекс должен быть не меньше 2 и меньше 2, то есть кандидатов нет.
len(heights) ≤ 10⁵heights[i] ≤ 10⁶span ≤ len(heights) / 2heights=[5, 4, 4, 2, 3, 6, 6, 1], span=2
[2, 3, 4]
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 104 теста на сервере, включая скрытые.