1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
n,k=input().split()
n,k=int(n),int(k)
list=input().split()
for i in range(n):
    list[i]=int(list[i])
list=[0]+list+[0]
i=1
used=0
streak=0
while True:
    if list[i+1]>=list[i]-k and list[i+1]>=list[i+2]-k:
        streak+=1
    else:
        add=max(list[i],list[i+2])-k-list[i+1]
        used+=add
        list[i+1]+=add
        streak=1
    i+=1
    i=i%n
    if streak==n:
        break
print(used)