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

पायथन में ए को बी से पहले बनाने के लिए हटाए जाने वाले वर्णों की न्यूनतम संख्या खोजने का कार्यक्रम

मान लीजिए कि हमारे पास एक स्ट्रिंग है जिसमें केवल दो अक्षर ए और बी हैं, हमें बीएस की सभी घटनाओं से पहले की सभी घटनाओं को प्राप्त करने के लिए एस से हटाए जाने वाले अक्षरों की न्यूनतम संख्या ढूंढनी होगी।

इसलिए, यदि इनपुट S ="AABAABB" जैसा है, तो आउटपुट 1 होगा, क्योंकि हम AABBB प्राप्त करने के लिए अंतिम A को हटा सकते हैं

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

  • a_right :="A" के s में आने की संख्या

  • b_बाएं :=0

  • उत्तर :=a_right

  • प्रत्येक अनुक्रमणिका i और वर्ण c in s के लिए, करें

    • यदि c "A" के समान है, तो

      • a_right:=a_right - 1

    • अन्यथा,

      • b_left :=b_left + 1

    • उत्तर:=न्यूनतम उत्तर और a_right + b_left

  • वापसी उत्तर

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

उदाहरण

class Solution:
   def solve(self, s):
      a_right = s.count("A")
      b_left = 0

      ans = a_right
      for i, c in enumerate(s):
         if c == "A":
            a_right -= 1
         else:
            b_left += 1
         ans = min(ans, a_right + b_left)
      return ans

ob = Solution()
S = "AABAABB"
print(ob.solve(S))

इनपुट

"AABAABB"

आउटपुट

1

  1. न्यूनतम संख्या रंग खोजने का कार्यक्रम पायथन में विलय के बाद रहता है

    मान लीजिए हमारे पास रंगों की एक सूची है (आर, जी, बी)। अब अगर दो अलग-अलग रंग एक-दूसरे के बगल में हों तो वे तीसरे रंग की एक ही रंग की वस्तु में बदल सकते हैं। हमें ऐसे परिवर्तनों के किसी भी संभावित क्रम के बाद शेष बची सबसे छोटी संख्या ज्ञात करनी होगी। इसलिए, यदि इनपुट रंग =[G, R, G, B, R] जैसा है, तो

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

    मान लीजिए कि हमारे पास एक नंबर स्टार्ट है और दूसरा नंबर एंड (स्टार्ट <एंड) है, हमें इन ऑपरेशंस का उपयोग करके स्टार्ट टू एंड को कन्वर्ट करने के लिए आवश्यक ऑपरेशंस की न्यूनतम संख्या ज्ञात करनी होगी - 1 से वृद्धि 2 से गुणा करें इसलिए, यदि इनपुट प्रारंभ =5, अंत =11 जैसा है, तो आउटपुट 2 होगा, क्योंकि

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

    मान लीजिए कि हमारे पास दो तार s और t हैं, हमें t को s का विकल्प बनाने के लिए s के लिए आवश्यक न्यूनतम संक्रियाएँ ज्ञात करनी होंगी। अब, प्रत्येक ऑपरेशन में, हम s में कोई भी स्थिति चुन सकते हैं और उस स्थिति के वर्ण को किसी अन्य वर्ण में बदल सकते हैं। इसलिए, यदि इनपुट s =abbpqr, t =bbxy जैसा है, तो आउट