Log Truncation
You are given a list of integers logs
and an integer limit
. Each element in logs[i]
represents the size of logs generated by user i
. limit
represents the total size of logs you can store in your system.
Return the largest x
such that if we truncate every log in logs
to be at most size x
, the sum of the remaining log sizes is at most limit
. If no log needs to be truncated, return the largest log size.
Constraints
1 ≤ n ≤ 100,000
wheren
is the length oflogs
1 ≤ limit < 2 ** 31
https://binarysearch.com/problems/Log-Truncation
Examples
Example 1
Input
- logs =
[50, 20, 1000, 50, 400]
- limit =
300
Output
- answer =
90
Explanation
If we truncate logs to 90
, then we get [50, 20, 90, 50, 90]
and its sum is 300
Example 2
Input
- logs =
[2, 3, 7]
- limit =
100
Output
- answer =
7
Explanation
No message needs to be truncated, so we return the max log size.
Leave a comment