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

पायथन में बाइनरी स्ट्रिंग में सभी 1s के साथ सबस्ट्रिंग गिनने का कार्यक्रम

मान लीजिए कि हमारे पास एक बाइनरी स्ट्रिंग है। हमें उन सबस्ट्रिंग्स की संख्या ज्ञात करनी है जिनमें केवल "1" है। अगर उत्तर बहुत बड़ा है, तो परिणाम को 10^9+7 से संशोधित करें।

इसलिए, यदि इनपुट s ="100111" जैसा है, तो आउटपुट 7 होगा, क्योंकि केवल "1" वाले सबस्ट्रिंग ["1", "1", "1", "1", "11" हैं। , "11" और "111"]

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

  • a :=0
  • गिनती :=0
  • i के लिए 0 से लेकर s-1 के आकार तक के लिए
    • यदि s[i] "0" के समान है, तो
      • a :=0
    • अन्यथा,
      • a :=a + 1
      • गिनती:=गिनती + ए
  • वापसी की संख्या

उदाहरण

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

def solve(s):
   a = 0
   count = 0
   for i in range(len(s)):
      if s[i] == "0":
         a = 0
      else:
         a += 1
         count += a
   return count

s = "100111"
print(solve(s))

इनपुट

"100111"

आउटपुट

7

  1. पायथन में एस में अलग-अलग सबस्ट्रिंग की संख्या गिनने का कार्यक्रम

    मान लीजिए कि हमारे पास एक स्ट्रिंग s है, हमें s के अलग-अलग गैर-रिक्त सबस्ट्रिंग की संख्या ज्ञात करनी है। इसलिए, यदि इनपुट s =abaa जैसा है, तो आउटपुट 8 होगा, क्योंकि सबस्ट्रिंग [a, b, ab, ba, aa, aba, बा, आबा]। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - कोशिश करें:=एक नया नक्शा n :=आकार का

  1. पायथन में n नोड्स के साथ BST की संख्या गिनने का कार्यक्रम

    मान लीजिए कि हमारे पास अलग-अलग नोड हैं। सभी अलग हैं। हमें यह पता लगाना है कि हम उन्हें कितने तरीकों से व्यवस्थित कर सकते हैं ताकि हम बाइनरी सर्च ट्री बना सकें। जैसा कि हम बाइनरी सर्च ट्री के बारे में जानते हैं, लेफ्ट सबट्री में हमेशा छोटे मान होते हैं और राइट सबट्री में बड़े मान होते हैं। इसे हल कर

  1. पायथन में दिए गए सूचकांकों के साथ स्ट्रिंग को फेरबदल करने का कार्यक्रम

    मान लीजिए कि हमारे पास एक स्ट्रिंग s और सूचकांकों की एक सूची है, वे समान लंबाई के हैं। स्ट्रिंग s को इस तरह से फेरबदल किया जाएगा कि स्थिति i पर वर्ण, अंतिम स्ट्रिंग में सूचकांकों [i] पर चला जाता है। हमें अंतिम स्ट्रिंग ढूंढनी है। इसलिए, यदि इनपुट s =ktoalak ind =[0,5,1,6,2,4,3] जैसा है, तो आउटपुट क