কম্পিউটার

পাইথনে k পরপর ডুপ্লিকেট অক্ষর মুছে ফেলার পর স্ট্রিং খুঁজে বের করার প্রোগ্রাম


ধরুন আমাদের একটি স্ট্রিং s এবং আরেকটি মান k আছে, আমরা বারবার প্রথম দিকের k ধারাবাহিক ডুপ্লিকেট অক্ষরগুলি মুছে ফেলি এবং চূড়ান্ত স্ট্রিংটি ফেরত দিই৷

সুতরাং, যদি ইনপুটটি s ="paaappmmmma" k =3 এর মত হয়, তাহলে আউটপুট হবে "ma", যেমন আমরা তিনটি "a"s মুছে দিয়ে "pppmmmma" পেতে পারি। তারপর আমরা "mmmma" পেতে তিনটি "p"s মুছে ফেলি। তারপর "ma" পেতে চারটি "m"s এর মধ্যে তিনটি মুছুন৷

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

  • নিম্নলিখিত ধাপগুলি অসীমভাবে করুন, করুন
    • গণনা :=0
    • অক্ষর :=s থেকে অনন্য অক্ষর পান
    • অক্ষরে প্রতিটি অক্ষরের জন্য c, করুন
      • যদি k পরপর c s হয়, তাহলে
        • s থেকে k পরপর c মুছুন
        • গণনা :=গণনা + 1
    • যদি গণনা 0 এর সমান হয়, তাহলে
      • লুপ থেকে বেরিয়ে আসুন
  • রিটার্ন

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

উদাহরণ

class Solution:
   def solve(self, s, k):
      while True:
         count = 0
         chars = set(s)
         for c in chars:
            if c * k in s:
               s = s.replace(c * k, "")
               count += 1
         if count == 0:
            break
      return s

ob = Solution()
s = "paaappmmmma"
k = 3
print(ob.solve(s, k))

ইনপুট

"paaappmmmma", 3

আউটপুট

ma

  1. পাইথনে k অক্ষর মুছে ফেলার পরে সমস্ত সম্ভাব্য সাবস্ট্রিং খুঁজুন

  2. পাইথন প্রোগ্রাম একটি স্ট্রিং-এ সমস্ত সদৃশ অক্ষর খুঁজে পেতে

  3. একটি স্ট্রিং মধ্যে মিরর অক্ষর খুঁজে পেতে পাইথন প্রোগ্রাম

  4. পাইথন ব্যবহার করে একটি স্ট্রিং থেকে সমস্ত ডুপ্লিকেট অক্ষর খুঁজুন