โจทย์
มีอาร์เรย์ nums มีค่าซ้ำและค่า Unique ต้องการหาผลรวมของค่าที่เป็น Unique เท่านั้น (ปรากฏ 1 ครั้ง)
ตัวอย่าง: nums = [5,2,1,5,3,1,3,8] → Unique: 2, 8 → ผลรวม = 10
อัลกอริธึม
- นับความถี่แต่ละค่าด้วย
Counter - วนลูปค่าที่ Frequency = 1 รวมกัน
โค้ด Python
from collections import Counter
def solve(nums):
count = Counter(nums)
ans = 0
for index, value in enumerate(nums):
if count[value] == 1:
ans += value
return ans
nums = [5,2,1,5,3,1,3,8]
print(solve(nums)) # Output: 10
Input / Output
Input: [5,2,1,5,3,1,3,8]
Output: 10