1
class Solution {
2
public:
3
int findMinMoves(vector<int> &machines) {
4
int total = accumulate(machines.begin(), machines.end(), 0);
5
if (total % machines.size()) return -1; // impossible
6

7
int avg = total / machines.size(), ans = 0, prefix = 0;
8
for (auto &x : machines) {
9
ans = max({ans, abs(prefix), x - avg});
10
prefix += x - avg;
11
}
12
return ans;
13
}
14
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0