Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

उन सब-स्ट्रिंग्स की गिनती ज्ञात कीजिए जिनके वर्णों को पायथन में दिए गए शब्द को बनाने के लिए पुनर्व्यवस्थित किया जा सकता है


मान लीजिए कि हमारे पास एक स्ट्रिंग S है (सभी अक्षर लोअरकेस में हैं), हमें लंबाई चार के उन सभी उप-स्ट्रिंग्स की गिनती का पता लगाना होगा जिनके वर्णों को इस शब्द को बनाने के लिए पुनर्व्यवस्थित किया जा सकता है "पक्षी"।

इसलिए, यदि इनपुट "बर्डब" जैसा है, तो आउटपुट 2 होगा।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • सीएनटी:=0

  • मैं के लिए 0 से s - 3 के आकार की सीमा में, करें

    • पक्षी:=[0, 0, 0, 0] के साथ एक सरणी

    • i से i + 4 की श्रेणी में j के लिए, करें

      • अगर s[j] 'b' के समान है, तो

        • पक्षी[0] :=पक्षी[0] + 1

      • अन्यथा जब s[j] 'i' के समान हो, तब

        • पक्षी[1] :=पक्षी[1] + 1

      • अन्यथा जब s[j] 'r' के समान हो, तब

        • पक्षी[2] :=पक्षी[2] + 1

      • अन्यथा जब s[j] 'd' के समान हो, तब

        • पक्षी[3] :=पक्षी[3] + 1

      • अगर पक्षी [1,1,1,1] के समान है, तो

        • सीएनटी:=सीएनटी + 1

  • वापसी सीएनटी

उदाहरण

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

def number_of_occurrence(s):
   cnt = 0
   for i in range(0, len(s) - 3):
      bird = [0, 0, 0, 0]
      for j in range(i, i + 4):
         if s[j] == 'b':
            bird[0] += 1
         elif s[j] == 'i':
            bird[1] += 1
         elif s[j] == 'r':
            bird[2] += 1
         elif s[j] == 'd':
            bird[3] += 1
      if bird == [1,1,1,1]:
         cnt += 1
   return cnt
s = "birdb"
print(number_of_occurrence(s))

इनपुट

"birdb"

आउटपुट

2

  1. पायथन में अपने क्रमबद्ध रूप में एक स्ट्रिंग के पैलिंड्रोमिक उप-स्ट्रिंग की गिनती पाएं

    मान लीजिए कि हमारे पास लोअरकेस वर्णों की एक स्ट्रिंग है (सभी ASCII वर्ण हैं), हमें दिए गए स्ट्रिंग के सभी अलग-अलग निरंतर पैलिंड्रोमिक उप-स्ट्रिंग खोजने होंगे। इसलिए, यदि इनपुट लेवल जैसा है, तो आउटपुट 7 होगा क्योंकि सात सबस्ट्रिंग हैं [लेवल, ईव, एल, ई, वी, ई, एल ]. इसे हल करने के लिए, हम इन चरणों क

  1. पायथन में स्ट्रिंग की एक जोड़ी में मिलान करने वाले वर्णों की संख्या की गणना करें

    हमें दो तार दिए गए हैं। हमें पहली स्ट्रिंग में वर्णों की गिनती खोजने की ज़रूरत है जो दूसरी स्ट्रिंग में भी मौजूद हैं। सेट के साथ सेट फ़ंक्शन हमें एक स्ट्रिंग में सभी तत्वों को अद्वितीय मान देता है। हम और ऑपरेटर का भी उपयोग करते हैं जो दो दिए गए स्ट्रिंग्स के बीच सामान्य तत्वों को ढूंढता है। उदाहरण

  1. पायथन में एक स्ट्रिंग में पहला दोहराया शब्द खोजें?

    एक स्ट्रिंग दी गई है। हमारा काम दिए गए स्ट्रिंग में पहले दोहराए गए शब्द को ढूंढना है। इस समस्या को लागू करने के लिए हम पायथन संग्रह का उपयोग कर रहे हैं। संग्रह से, हम काउंटर () विधि प्राप्त कर सकते हैं। एल्गोरिदम Repeatedword(n) /* n is the string */ Step 1: first split given string separated by sp