You are given an integer array nums
. The unique elements of an array are the elements that appear exactly once in the array.
Return the sum of all the unique elements of nums
.
Input: nums = [1,2,3,2] Output: 4 Explanation: The unique elements are [1,3], and the sum is 4.
Input: nums = [1,1,1,1,1] Output: 0 Explanation: There are no unique elements, and the sum is 0.
Input: nums = [1,2,3,4,5] Output: 15 Explanation: The unique elements are [1,2,3,4,5], and the sum is 15.
1 <= nums.length <= 100
1 <= nums[i] <= 100
impl Solution {
pub fn sum_of_unique(nums: Vec<i32>) -> i32 {
let mut count = [0; 101];
for num in nums {
count[num as usize] += 1;
}
count
.iter()
.enumerate()
.filter(|(_, c)| **c == 1)
.map(|(n, _)| n as i32)
.sum()
}
}