1. 程式人生 > >453.最小移動次數使陣列元素相等

453.最小移動次數使陣列元素相等

給定一個長度為 n 的非空整數陣列,找到讓陣列所有元素相等的最小移動次數。每次移動可以使 n - 1 個元素增加 1。

示例:

輸入:
[1,2,3]

輸出:
3

解釋:
只需要3次移動(注意每次移動會增加兩個元素的值):

[1,2,3]  =>  [2,3,3]  =>  [3,4,3]  =>  [4,4,4]

class Solution {
public:
    int minMoves(vector<int>& nums) {
        int mn = INT_MAX, res = 0;
        for (int num : nums) mn = min(mn, num);
        for (int num : nums) res += num - mn;
        return res;
    }
};