Ctrl K

Самые длинные качели

Лёгкая
Дан массив целых чисел heights. Назовём **качелями** непрерывный участок массива длиной не меньше 2, который выглядит как a, a+1, a, a+1, … — то есть сначала значение растёт ровно на 1, затем падает ровно на 1, снова растёт на 1 и так далее, по очереди. Верните длину самых длинных качелей в массиве или -1, если качелей нет вовсе.
Пример 1
heights=[7, 5, 6, 5, 6, 5, 9] → 5

Участок [5, 6, 5, 6, 5] чередует 5 и 6 и начинается с меньшего — длина 5.

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

[2, 3] подходит, а [3, 2, 3] — нет: участок должен начинаться с подъёма. [2, 3, 4] тоже не подходит — после подъёма нужен спуск. Ответ 2.

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

Ни одна пара соседей не отличается ровно на +1, поэтому ответ -1.

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

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