#line1 = "4 2"
#line2 = "7 3 0 2"
line1 = input()
line2 = input()
k = int(line1.split()[1])
dosypac = 0
wysokosci = line2.split()
#print(wysokosci)
for pos in range(len(wysokosci)):
wysokosci[pos] = int(wysokosci[pos])
#print(wysokosci)
#print(k)
while True:
#print(wysokosci)
if len(wysokosci) == 0:
break
pozycja_maks = 0
for poz in range(len(wysokosci)):
if wysokosci[pozycja_maks] <= wysokosci[poz]:
pozycja_maks = poz
minimalna_wy = wysokosci[pozycja_maks] - k
poz = pozycja_maks-1
if poz >= 0:
if wysokosci[poz] < minimalna_wy:
brakuje = minimalna_wy - wysokosci[poz]
dosypac += brakuje
wysokosci[poz] += brakuje
poz = pozycja_maks+1
if poz < len(wysokosci):
if wysokosci[poz] < minimalna_wy:
brakuje = minimalna_wy - wysokosci[poz]
dosypac += brakuje
wysokosci[poz] += brakuje
wysokosci.pop(pozycja_maks)
#print(pozycja_maks)
print(dosypac)
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 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | #line1 = "4 2" #line2 = "7 3 0 2" line1 = input() line2 = input() k = int(line1.split()[1]) dosypac = 0 wysokosci = line2.split() #print(wysokosci) for pos in range(len(wysokosci)): wysokosci[pos] = int(wysokosci[pos]) #print(wysokosci) #print(k) while True: #print(wysokosci) if len(wysokosci) == 0: break pozycja_maks = 0 for poz in range(len(wysokosci)): if wysokosci[pozycja_maks] <= wysokosci[poz]: pozycja_maks = poz minimalna_wy = wysokosci[pozycja_maks] - k poz = pozycja_maks-1 if poz >= 0: if wysokosci[poz] < minimalna_wy: brakuje = minimalna_wy - wysokosci[poz] dosypac += brakuje wysokosci[poz] += brakuje poz = pozycja_maks+1 if poz < len(wysokosci): if wysokosci[poz] < minimalna_wy: brakuje = minimalna_wy - wysokosci[poz] dosypac += brakuje wysokosci[poz] += brakuje wysokosci.pop(pozycja_maks) #print(pozycja_maks) print(dosypac) |
English