কম্পিউটার টিউটোরিয়াল

পাইথনে একটি স্ট্রিংয়ের সর্বোচ্চ ফ্রিকোয়েন্সি ক্যারেক্টার অন্য স্ট্রিংয়েও একই বারम्बার উপস্থিত কিনা তা যাচাই করা

মান লিজিয়ে আমাদের দুটি স্ট্রিং s এবং t আছে, আমাদের s- থেকে সবচেয়ে বেশি ফ্রিকোয়েন্সি সম্পন্ন ক্যারেক্টারটি বেছে নিতে হবে এবং তারপর যাচাই করতে হবে সেটি t-এ একই সংখ্যকবার উপস্থিত আছে কিনা।

যেমন, ইনপুট যদি s = "crosssection", t = "securesystem" হয়, তবে আউটপুট হবে True, কারণ s-এ সবচেয়ে বেশি ফ্রিকোয়েন্সি সম্পন্ন ক্যারেক্টার হল 's'। এবং t-এ 's'-এর একই সংখ্যক Ocurrence রয়েছে।

সমাধানের ধাপসমূহ

  • freq := s-এর সব ক্যারেক্টার এবং তাদের ফ্রিকোয়েন্সি ধারণকারী একটি ম্যাপ
  • max_freq_char = s-এ যেখানে ফ্রিকোয়েন্সি সর্বোচ্চ সেটি ক্যারেক্টার
  • max_freq := max_freq_char-এর ফ্রিকোয়েন্সি মান
  • <লি>যদি t-এ max_freq_char-এর Ocurrence max_freq সমান হয়, তবে:
    • True রিটার্ন করুন
  • False রিটার্ন করুন

উদাহরণ

বेहतर বোঝার জন্য নিচের বাস্তবায়নটি দেখুন:

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
  1. পাইথনে একটি ট্রি অন্য ট্রির সাবট্রি কিনা যাচাই করা

  2. পাইথনে স্ট্রিং-এর দুটি অর্ধেক একই ক্যারেক্টার সেট ধারণ করে কিনা চেক করা

  3. পাইথনে স্ট্রিং-এ কোনো ক্যারেক্টার অক্ষর কিনা চেক করা

  4. পাইথনে স্ট্রিং থেকে সর্বোচ্চ অ্যালফাবেটিক্যাল ক্যারেক্টার পাওয়া