1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
n, k = map(int, input().split())
tab = list(map(int, input().split()))
mapping_tab = [[] for _ in range(10**6+1)]

for i in range(n):
    mapping_tab[tab[i]].append(i)

indexes = []
for i in range(10**6, -1, -1):
    for indx in mapping_tab[i]:
        indexes.append(indx)
res=0

for i in range(1, n):
    if n-1!=indexes[i] and tab[indexes[i]]+k<tab[indexes[i]+1]:
        d = tab[indexes[i]+1]-(tab[indexes[i]]+k)
        res+=d
        tab[indexes[i]]+=d
        
    if 0!=indexes[i] and tab[indexes[i]]+k<tab[indexes[i]-1]:
        d = tab[indexes[i]-1]-(tab[indexes[i]]+k)
        res+=d
        tab[indexes[i]]+=d
        

# print(*indexes)
# print(*tab)
        
print(res)