10915. Комп'ютерна гра (платформи)
Чи можете ви згадати хоч одного свого знайомого до двадцятирічного віку, який у дитинстві не грав у комп'ютерні ігри? Якщо так, то може бути ви й самі не знайомі з цією розвагою? Втім, труднощів при вирішенні цього завдання створити не повинно.
У багатьох старих іграх із двовимірною графікою можна зіткнутися з подібною ситуацією. Якийсь герой стрибає по платформах (або острівцям), що висять у повітрі. Він повинен перебратися від одного краю екрана до іншого. При цьому при стрибку з однієї платформи на сусідню, у героя йде \(|y_2-y_1 |\) одиниць енергії, де \(y_1\) та \(y_2\) — висоти, на яких розташовані ці платформи. Крім того, у героя є суперприйом, який дозволяє перескочити через платформу, але на це витрачається \(3·|y_3-y_1|\) одиниць енергії. Звичайно, енергію слід витрачати максимально економно.
Припустимо, що вам відомі координати всіх платформ у порядку від лівого краю до правого. Чи зможете ви знайти, яка мінімальна кількість енергії знадобиться герою, щоб дістатися з першої платформи до останньої?
Формат вхідних даних
У першому рядку записано кількість платформ \(n\) (\(1 ≤ n ≤ 30000\)).
Другий рядок містить \(n\) натуральних чисел, що не перевищують 30000 - висоти, на яких розташовуються платформи.
Формат вихідних даних
Виведіть одне число - мінімальну кількість енергії, яку повинен витратити гравець на подолання платформ (звичайно ж у припущенні, що cheat-коди використовувати не можна).
Приклад вхідних даних
2
100 1
Приклад вихідних даних
99
Приклад вхідних даних
3
1 100 80
Приклад вихідних даних
119
Коментарі