N,M = map(int,input().split()) A = list(map(int,input().split())) def check(L): stack = 0 for a in A: if stack + a < L * M: return False else: stack = stack + a - L * M return True end = 10 ** 9 + 1 start = 0 while end - start > 1: mid = (start + end) // 2 if check(mid): start = mid else: end = mid print(start)