# 453. Minimum Moves to Equal Array Elements

Given a non-empty integer array of size n, find the minimum number of moves required to make all array elements equal, where a move is incrementing n - 1 elements by 1.

Example:

Input:
[1,2,3]

Output:
3

Explanation:
Only three moves are needed (remember each move increments two elements):

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

# Solution

Approach 1: simultaneously incrementing n - 1 elements by 1 is equivalent to decrementing 1 element by 1.

# Code (Python)

Approach 1:

    def minMoves(self, nums: List[int]) -> int:
        # simultaneously incrementing n - 1 elements by 1 is equivalent to decrementing 1 element by 1, so just find the total diffs with the min element
        min_value = min(nums)
        return sum(num - min_value for num in nums)

# Code (C++)

Approach 1:

Approach 2: