Machine Learning coder
def solve(A, N, M, L, x):
B = A[:]
op = 0
for i in range(N):
if B[i] > x:
dec = B[i] - x
length = min(L, N - i)
for j in range(length):
B[i + j] -= dec
op += dec
if op > M:
return False
return True
def minimize_max_element(A, N, M, L):
low = min(A)
high = max(A)
while low < high:
mid = low + (high - low) // 2
if solve(A, N, M, L, mid):
high = mid
else:
low = mid + 1
return low
Array and queries ✅
#Google
1 · 1.4K ·