i-го — heights[i]. За один шаг можно поднять или опустить любой участок ровно на 1.
Нужно, чтобы ряд высот стал монотонным: либо неубывающим (каждый следующий участок не ниже предыдущего), либо невозрастающим (каждый следующий не выше). Какое направление выбрать — решать вам.
Верните наименьшее число шагов.heights=[4, 1, 3, 2] → 2
Поднимаем второй участок с 1 до 2 и опускаем третий с 3 до 2: получается [4, 2, 2, 2], высоты не растут. Всего 2 шага.
heights=[2, 6, 3, 8] → 3
Опускаем 6 до 3: [2, 3, 3, 8] не убывает. Это 3 шага, быстрее не выйдет.
heights=[9, 9, 5, 0] → 0
Высоты уже не растут, ничего менять не нужно.
heights) ≤ 1000heights[i] ≤ 1000heights=[4, 1, 3, 2]
2
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 138 тестов на сервере, включая скрытые.