l
) to 0 and right (r
) to the maximum element in arr
.l
is less than r
:
a. Calculate the middle value m
as l + (r - l) / 2
.
b. Compute the sum of the array after replacing all elements greater than m
with m
.
c. If the sum is greater than or equal to the target, set r
to m
.
d. If the sum is less than the target, set l
to m + 1
.l
will be the value that makes the sum of the modified array closest to the target.l - 1
results in a sum closer to the target than l
. If so, return l - 1
.l
.