ধরুন আমাদের একটি সংখ্যা আছে যা আমাদের পরীক্ষা করতে হবে ভারসাম্যপূর্ণ কিনা। একটি সংখ্যা ভারসাম্যপূর্ণ হয় যখন সমস্ত সংখ্যার ফ্রিকোয়েন্সি একই হয় বা না হয়৷
সুতরাং, যদি ইনপুটটি num =562256 এর মত হয়, তাহলে প্রতিটি অঙ্কের ফ্রিকোয়েন্সি 2 হওয়ায় আউটপুটটি True হবে।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- সংখ্যা :=সংখ্যাকে স্ট্রিং হিসাবে রূপান্তর করুন
- freq :=সংখ্যার সংখ্যার ফ্রিকোয়েন্সি সম্বলিত একটি মানচিত্র
- freq_values :=সংখ্যা থেকে সমস্ত অঙ্কের ফ্রিকোয়েন্সি মান নিয়ে একটি নতুন সেট তৈরি করুন
- যদি freq_values এর আকার 1 এর মত হয়, তাহলে
- সত্য ফেরান
- মিথ্যে ফেরত দিন
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ কোড
from collections import defaultdict def solve(num): number = str(num) freq = defaultdict(int) n = len(number) for i in range(n): freq[int(number[i])] += 1 freq_values = set(freq.values()) if len(freq_values) == 1: return True return False num = 562256 print(solve(num))
ইনপুট
562256
আউটপুট
True