একটি অ্যারে nums দেওয়া আছে যাতে কিছু ডুপ্লিকেট এবং কিছু ইউনিক এলিমেন্ট রয়েছে। nums-এ থাকা সকল ইউনিক এলিমেন্টের যোগফল বের করতে হবে।
ইনপুট: nums = [5, 2, 1, 5, 3, 1, 3, 8] → আউটপুট: 10। শুধু 8 এবং 2 ইউনিক, যোগফল 10।
সমাধানের ধাপসমূহ
count := Counter(nums) (প্রতিটি এলিমেন্টের ফ্রিকোয়েন্সি)
ans := 0
প্রতিটি (index, value) পেয়ারের জন্য:
- যদি count[value] == 1, তবে ans += value
ans রিটার্ন করুন
উদাহরণ (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))
ইনপুট
[5, 2, 1, 5, 3, 1, 3, 8]
আউটপুট
10