i-й башни — heights[i]. Один ход устроен так:
1. Найдите самую высокую башню; если таких несколько, берите самую левую.
2. Найдите ближайшую меньшую высоту среди всех башен — наибольшее значение, строго меньшее высоты выбранной башни.
3. Разберите выбранную башню до этой высоты.
Ходы повторяются, пока все башни не станут одной высоты. Верните, сколько ходов для этого понадобится.heights=[7, 2, 7, 4] → 5
Разные высоты: 2, 4, 7. Каждая башня высотой 7 опускается дважды (до 4, потом до 2), башня высотой 4 — один раз, а 2 не трогаем. Всего 2 + 2 + 1 = 5 ходов.
heights=[3, 3] → 0
Башни уже одной высоты — ходов не нужно.
heights=[1, 5, 5, 2, 9] → 8
heights=[7, 2, 7, 4]
5
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 102 теста на сервере, включая скрытые.