ধরুন আমাদের দুটি স্ট্রিং s এবং t আছে, আমাদের s থেকে সর্বাধিক ঘন ঘন অক্ষরটি নির্বাচন করতে হবে এবং তারপরে সেই নির্দিষ্ট অক্ষরটি একই সংখ্যক বার উপস্থিত আছে কিনা তা পরীক্ষা করতে হবে।
সুতরাং, যদি ইনপুটটি s ="ক্রসসেকশন", t ="নিরাপত্তা সিস্টেম" এর মত হয়, তাহলে আউটপুটটি True হবে, কারণ s-এর মধ্যে সবচেয়ে ঘন ঘন অক্ষরটি হল 's'। এবং টি-তে 's'-এর একই সংখ্যক উপস্থিতি রয়েছে।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- freq :=s এর সমস্ত অক্ষর এবং তাদের ফ্রিকোয়েন্সি সম্বলিত একটি মানচিত্র
- max_freq_char =s-এ অক্ষর যেখানে ফ্রিকোয়েন্সি সর্বাধিক
- max_freq :=max_freq_char এর ফ্রিকোয়েন্সি মান
- যদি t তে max_freq_char এর উপস্থিতি max_freq এর মতো হয়, তাহলে
- সত্য ফেরান
- মিথ্যে ফেরত দিন
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
from collections import defaultdict def solve(s, t) : freq = defaultdict(int) for char in s : freq[char] += 1 max_freq_char = max(freq, key=freq.get) max_freq = freq[max_freq_char] if max_freq == t.count(max_freq_char) : return True return False s = "crosssection" t = "securesystem" print(solve(s, t))
ইনপুট
"crosssection", "securesystem"
আউটপুট
True