n,m = map(int,input().split()) a = list(map(int,input().split())) sum_ = sum(a) def ok(s): tame = 0 res = True for i in range(n): if a[i] < s: if tame + a[i] < s: res = False break else: tame -= s-a[i] else: tame += a[i] - s return res l = -1 r = 10 ** 9 + 1 while r-l>1: mid = (l + r) // 2 if ok(mid): l = mid else: r = mid print(l//m)