Minimum Moves to Equal Array Elements
Question
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]
Tags
- Mathematics
Thought
Use all the number in the given array nums
to minus with the minimum number in nums
and the sum of the difference is the result.
Code
class Solution(object):
def minMoves(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
minNum = min(nums)
ans = 0
for num in nums:
ans += num - minNum
return ans