Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- inp = input()
- global arr
- arr = [int(x) for x in inp.split()]
- inp = input()
- global arr1
- arr1 = [int(x) for x in inp.split()]
- def search(i, real, req,fill):
- if i == arr[0] - 2:
- help = arr1[-1]
- if fill > 0:
- req += real*(arr[1] - fill)
- real += (i + 1)*2 + 2
- help -= arr[1] - fill
- while help > arr[1]:
- req += real*(arr[1])
- real += (i + 1)*2 + 2
- help -= arr[1]
- req += real*(help)
- return req
- else:
- req += max(real,1)*(i+1)
- if fill + arr1[i] <= arr[1]:
- return min(search(i+1,real+1,req,fill+arr[i]),search(i+1,real+2*i+2,req,0))
- else:
- return search(i,real+2*i+2,req,0)
- print(search(0,0,0,0))
Advertisement
Add Comment
Please, Sign In to add comment