ধরুন আমাদের কাছে সংখ্যার একটি তালিকা আছে যাকে বলা হয় সংখ্যা। আমাদের 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