2357. Make Array Zero by Subtracting Equal Amounts

#### QUESTION:

You are given a non-negative integer array nums. In one operation, you must:

Choose a positive integer x such that x is less than or equal to the smallest non-zero element in nums. Subtract x from every positive element in nums. Return the minimum number of operations to make every element in nums equal to 0.

Example 1:

``````Input: nums = [1,5,0,3,5]
Output: 3
Explanation:
In the first operation, choose x = 1. Now, nums = [0,4,0,2,4].
In the second operation, choose x = 2. Now, nums = [0,2,0,0,2].
In the third operation, choose x = 2. Now, nums = [0,0,0,0,0].
``````

Example 2:

``````Input: nums = [0]
Output: 0
Explanation: Each element in nums is already 0 so no operations are needed.
``````

Constraints:

``````1 <= nums.length <= 100
0 <= nums[i] <= 100
``````

#### EXPLANATION:

easy的题目, 就不多说了, 直接按着题目的思路写出来即可.

#### SOLUTION:

``````class Solution {
func minimumOperations(_ nums: [Int]) -> Int {
var result = 0
var newNums = nums.sorted()
while  newNums[newNums.count-1] != 0 {
var index:Int = 0
while newNums[index] == 0 {
index += 1
}
var tmp = newNums[index]
for i in index...newNums.count-1 {
newNums[i] -= tmp
}
result += 1
newNums = newNums.sorted()
}
return result
}
}
``````
>