ধরুন আমাদের কাছে সংখ্যার একটি তালিকা আছে যাকে বলা হয় সংখ্যা। আমাদের i
সুতরাং, যদি ইনপুটটি সংখ্যার মত হয় =[5, 4, 5, 4, 4], তাহলে আউটপুট 4 হবে, যেমন আমাদের কাছে (0, 2), (1, 3), (1, 4) এর মতো সূচক জোড়া রয়েছে। ) এবং (3, 4)।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
c :=সংখ্যায় উপস্থিত প্রতিটি উপাদানের ফ্রিকোয়েন্সি ধারণকারী একটি তালিকা
গণনা :=0
c-এর সমস্ত মানের তালিকায় প্রতিটি n-এর জন্য, do
গণনা :=গণনা + (n *(n - 1)) / 2
ফেরত গণনা
আরও ভালোভাবে বোঝার জন্য আসুন নিম্নলিখিত বাস্তবায়ন দেখি
উদাহরণ
from collections import Counter
def solve(nums):
c = Counter(nums)
count = 0
for n in c.values():
count += n * (n - 1) // 2
return count
nums = [5, 4, 5, 4, 4]
print(solve(nums))
ইনপুট
[5, 4, 5, 4, 4]
আউটপুট
4