Ad
Arrays
Code
Diff
  • #include <iostream>
    #include <vector>
    #include <algorithm>
    #include <cassert>
    
    int unique_sum(const std::vector<int>& n) {
      auto nums = n;
      std::sort(nums.begin(), nums.end(), [](int a, int b) {
        return a < b;
      });
      int sum = 0;
      for(size_t i = 0; i < nums.size(); i++) {
        if(nums[i] == nums[i+1] || nums[i] == nums[i-1]) {
          continue;
        } else {
          sum += nums[i];
        }
      }
      return sum;
    }
    • #include <iostream>
    • #include <vector>
    • #include <unordered_map>
    • #include <algorithm>
    • #include <cassert>
    • int unique_sum(const std::vector<int>& nums) {
    • std::unordered_map<int, int> hashMap;
    • for (int i = 0; i < nums.size(); i++) {
    • if (hashMap.find(nums[i]) == hashMap.end()) {
    • hashMap[nums[i]] = nums[i];
    • int unique_sum(const std::vector<int>& n) {
    • auto nums = n;
    • std::sort(nums.begin(), nums.end(), [](int a, int b) {
    • return a < b;
    • });
    • int sum = 0;
    • for(size_t i = 0; i < nums.size(); i++) {
    • if(nums[i] == nums[i+1] || nums[i] == nums[i-1]) {
    • continue;
    • } else {
    • hashMap[nums[i]] = 0;
    • sum += nums[i];
    • }
    • }
    • int sum = 0;
    • for (auto i: hashMap) {
    • sum = sum + hashMap[i.first];
    • }
    • return sum;
    • }