517 Super Washing Machines

See: https://leetcode.com/problems/super-washing-machines/description/

C++:

class Solution {
public:
    int findMinMoves(vector<int>& machines)
    {
        int sum = accumulate(machines.begin(), machines.end(), 0);
        if (sum % machines.size() != 0)
        {
            return -1;
        }
        int res = 0, cnt = 0, avg = sum / machines.size();
        for (int m : machines)
        {
            cnt += m - avg;
            res = max(res, max(abs(cnt), m - avg));
        }
        return res;
    }
};

 Reference: http://www.cnblogs.com/grandyang/p/6648557.html

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324683987&siteId=291194637