Ctrl K

Остывание по градусу

Средняя
Метеостанция раз в час записывает температуру: readings[i] — показание в i-й час. Назовём *плавным остыванием* непрерывный отрезок из одного или нескольких часов, в котором каждое показание ровно на один градус ниже предыдущего. Для первого часа отрезка условие не проверяется, поэтому любой одиночный час — тоже плавное остывание. Верните количество плавных остываний в журнале.
Пример 1
readings=[5, 4, 3, 7, 6] → 9

Серия 5, 4, 3 даёт 6 промежутков: три одиночных, [5, 4], [4, 3] и [5, 4, 3]. Серия 7, 6 даёт ещё 3. Итого 9.

Пример 2
readings=[2, 2, 1] → 4

Подходят [2], [2], [1] и [2, 1] (второй и третий час). Первые два часа температура не менялась — это не остывание.

Пример 3
readings=[9] → 1
Ограничения
  • 1 ≤ len(readings) ≤ 10⁵
  • -10⁵ ≤ readings[i] ≤ 10⁵
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиN-е число из заданных простых СредняяЦепочка кратных СредняяЛучший сдвиг для взвешенной суммы СредняяДуэль за крайние карты СредняяСамое большое частное Средняя
загружаем Python…
Вход
readings=[5, 4, 3, 7, 6]
Ожидается
9

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