Skip to content

Latest commit

 

History

History
51 lines (42 loc) · 1.19 KB

File metadata and controls

51 lines (42 loc) · 1.19 KB

1748. Sum of Unique Elements

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.

Example 1:

Input: nums = [1,2,3,2]
Output: 4
Explanation: The unique elements are [1,3], and the sum is 4.

Example 2:

Input: nums = [1,1,1,1,1]
Output: 0
Explanation: There are no unique elements, and the sum is 0.

Example 3:

Input: nums = [1,2,3,4,5]
Output: 15
Explanation: The unique elements are [1,2,3,4,5], and the sum is 15.

Constraints:

  • 1 <= nums.length <= 100
  • 1 <= nums[i] <= 100

Solutions (Rust)

1. Count

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()
    }
}