কম্পিউটার

পাইথনে a-এর প্রতিটি গ্রুপের পরে একই দৈর্ঘ্যের b-এর একটি গ্রুপ অনুসরণ করছে কিনা তা পরীক্ষা করুন


ধরুন আমাদের একটি ছোট হাতের স্ট্রিং s আছে মাত্র দুটি অক্ষর a এবং b। আমাদের পরীক্ষা করতে হবে পরপর a এর প্রতিটি গ্রুপ সমান দৈর্ঘ্যের পরপর b এর গ্রুপ অনুসরণ করছে কিনা।

সুতরাং, যদি ইনপুটটি s ="abaaabbbaabbaabbab" এর মত হয়, তাহলে আউটপুটটি True হবে, যেহেতু সমস্ত গ্রুপ (ab), (aaabbb), (aabb), (aabb), (ab)।

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • a_count :=0, string_len :=s এর আকার
  • i :=0
  • যখন আমি
  • যখন i
  • a_count :=a_count + 1
  • i :=i + 1
  • যখন i
  • a_count :=a_count - 1
  • i :=i + 1
  • যদি a_count 0 না হয়, তাহলে
    • মিথ্যে ফেরত দিন
  • সত্য ফেরান
  • উদাহরণ

    আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

    def solve(s):
       a_count = 0
       string_len = len(s)
       i = 0
       while i < string_len:
          while i < string_len and s[i] == 'a':
             a_count += 1
             i += 1
          while i < string_len and s[i] == 'b':
             a_count -= 1
             i += 1
          if a_count != 0:
             return False
       return True
    s = "abaaabbbaabbaabbab"
    print(solve(s))

    ইনপুট

    "abaaabbbaabbaabbab"

    আউটপুট

    True

    1. পাইথনে প্রান্ত দৈর্ঘ্য সীমিত পথের অস্তিত্ব পরীক্ষা করার জন্য প্রোগ্রাম

    2. পাইথনে দুটি বাইনারি গাছের পাতার ট্র্যাভার্সাল একই কিনা তা পরীক্ষা করুন

    3. পাইথনে গ্রুপ অ্যানাগ্রাম

    4. পাইথন - একটি তালিকার সমস্ত উপাদান একই কিনা তা পরীক্ষা করুন