কম্পিউটার

পাইথনে সিকোয়েন্স থেকে সর্বাধিক কে-রিপিটিং সাবস্ট্রিং খুঁজে বের করার প্রোগ্রাম


ধরুন আমাদের কাছে s নামক অক্ষরগুলির একটি ক্রম আছে, আমরা বলি একটি স্ট্রিং w হল k-রিপিটিং স্ট্রিং যদি w সংযোজিত হয় k বার হল অনুক্রমের একটি সাবস্ট্রিং। w এর সর্বোচ্চ k-পুনরাবৃত্তির মান হবে সর্বোচ্চ মান k যেখানে w ক্রমানুসারে k-পুনরাবৃত্তি হচ্ছে। এবং যদি w প্রদত্ত অনুক্রমের একটি সাবস্ট্রিং না হয়, তাহলে w-এর সর্বোচ্চ k-পুনরাবৃত্তির মান হল 0। তাই যদি আমাদের s এবং w থাকে তাহলে আমাদেরকে ক্রমানুসারে w-এর সর্বোচ্চ k-পুনরাবৃত্তির মান খুঁজে বের করতে হবে।

সুতরাং, যদি ইনপুটটি s ="papaya" w ="pa" এর মত হয়, তাহলে আউটপুট হবে 2 কারণ w ="pa" "papaya" তে দুবার উপস্থিত থাকে৷

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

  • গণনা:=s

    এ উপস্থিত w এর সংখ্যা
  • যদি গণনা 0 এর সমান হয়, তাহলে

    • ফেরত 0

  • আমি পরিসরে গণনা 0 এর জন্য, 1 দ্বারা হ্রাস করুন, করুন

    • যদি w এর পুনরাবৃত্তি s তে থাকে, তাহলে

      • ফেরত i

উদাহরণ (পাইথন)

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

def solve(s, w):
   Count=s.count(w)
   if Count==0:
      return 0
   for i in range(Count,0,-1):

      if w*i in s:
         return i

s = "papaya"
w = "pa"
print(solve(s, w))

ইনপুট

"papaya", "pa"

আউটপুট

2

  1. পাইথনে কয়েন ম্যাট্রিক্স অদৃশ্য হয়ে যাওয়া থেকে আমরা পেতে পারি সর্বাধিক কয়েন খুঁজে বের করার প্রোগ্রাম

  2. একটি প্রদত্ত টিপল থেকে হ্যাশ খুঁজে পেতে পাইথন প্রোগ্রাম

  3. পাইথনে গাণিতিক ক্রম থেকে অপসারিত শব্দ খুঁজে বের করার প্রোগ্রাম

  4. পাইথনে সর্বোচ্চ বিল্ডিং উচ্চতা খুঁজে বের করার প্রোগ্রাম