Измазни ја низата

За една низа ќе велиме дека е H-мазна, ако разликата на вредностите на секои два соседа не е поголема од H.
Формално, ако низата е S и има N елементи означени со индекси од 0 до N-1, таа е H-мазна ако важи дека |S[i]-S[i-1]| ≤ H, за сите 0 < i < N.

Нека ви е дадена низа од ненегативни цели броеви. Нека имате право да ги правите само следните 2 операции на низата:
    1. Зголеми еден од елементите на низата за 1.
    2. Намали еден од елементите на низата за 1.

Можете да направите колку сакате вакви операции, но секоја операција чини 1 денар, па сакате да направите што е можно помалку операции.
Пресметајте, за дадена низа, колку денари ќе потрошите за да ја измазните.

Забелешка: Значаен дел од тест примерите имаат мало N, мало H и/или мала вредност на елементите на низата.



Влез

Во првиот ред се дадени целите броеви N (0 < N < 200 001) и Н (0 ≤ H ≤ 1 000 000 000).
Во вториот ред се дадени N ненегативни цели броеви – елементите на низата. Секој број е помал или еднаков на 1 000 000 000.



Излез

Во првиот ред отпечатете еден број – колку најмалку денари се потребни за да ја измазните низата.



Ограничувања

Временско ограничување: 1 second
Мемориско ограничување: 64 megabytes



Примери


влез
7 1
2 10 0 2 4 3 3
излез
10
влез
7 3
2 10 2 6 4 3 3
излез
6
влез
5 1
6 5 4 3 2
излез
0


Објаснување на првиот пример: Нултиот елемент не го менуваме. Ќе го намалиме првиот елемент (10) 7 пати и тој ќе стане 3. Ќе го зголемиме вториот елемент (0) 2 пати и тој ќе стане 2. Сега можеме да го зголемиме третиот елемент еднаш или да го намалиме четвртиот елемент еднаш. Значи, потребни се вкупно 10 операции (7+2+1) за да се измазни низата.



 Submit your code