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

पायथन में y से पहले सभी x बनाने के लिए आवश्यक फ़्लिपिंग की संख्या की गणना करने का कार्यक्रम


मान लीजिए कि हमारे पास एक लोअरकेस स्ट्रिंग s है जिसमें अक्षर x और y हैं। अब एक संक्रिया पर विचार करें जिसमें हम एकल x को y में बदलते हैं या इसके विपरीत। सभी x के आने को y से पहले सेट करने के लिए हमें उस ऑपरेशन को करने के लिए न्यूनतम संख्या का पता लगाना होगा।

इसलिए, यदि इनपुट s ="yxyyyyxyxx" जैसा है, तो आउटपुट 4 होगा।

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

  • y_left :=0

  • x_right:=s में "x" की संख्या, res:=s में "x" की संख्या

  • प्रत्येक आइटम के लिए, करें

    • यदि आइटम "x" के समान है, तो

      • x_right :=x_right - 1

    • अन्यथा,

      • y_left :=y_left + 1

    • रेस :=न्यूनतम रेस और (y_left + x_right)

  • रिटर्न रेस

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

उदाहरण

class Solution:
   def solve(self, s):
      y_left = 0
      x_right = res = s.count("x")
      for item in s:
         if item == "x":
            x_right -= 1
         else:
            y_left += 1
         res = min(res, y_left + x_right)
      return res
ob = Solution()
s = "yxyyyyxyxx"
print(ob.solve(s))

इनपुट

"yxyyyyxyxx"

आउटपुट

4

  1. पायथन में दो बार एक ही स्ट्रिंग के संयोजन के रूप में स्ट्रिंग बनाने के लिए आवश्यक संचालन की संख्या की गणना करने के लिए कार्यक्रम

    मान लीजिए कि हमारे पास एक लोअरकेस स्ट्रिंग s है। अब एक ऑपरेशन पर विचार करें, जहां हम s में किसी भी कैरेक्टर को डिलीट, इंसर्ट या अपडेट कर सकते हैं। हमें किसी भी स्ट्रिंग t के लिए s =(t concatenate t) बनाने के लिए आवश्यक न्यूनतम संक्रियाओं की संख्या गिननी होगी। इसलिए, यदि इनपुट s =pqrxqsr जैसा है, तो

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

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

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

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