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

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

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

इसलिए, यदि इनपुट रंग =["G", "R", "G", "B", "R"] जैसा है, तो आउटपुट 1 होगा क्योंकि यह नीचे की तरह रूपांतरित हो सकता है -

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

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

  • n :=रंगों का आकार
  • यदि रंगों में केवल एक ही विशिष्ट रंग है, तो
    • वापसी n
  • यदि n <=1, तो
    • वापसी n
  • x :=0
  • d :=प्रमुख मान युग्मों वाला नक्शा {("R", 1), ("G", 2), ("B", 3)}
  • रंगों में प्रत्येक c के लिए, करें
    • x :=x XOR d[c]
  • वापसी 2 यदि x, 0 के समान है अन्यथा 1

उदाहरण (पायथन)

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

class Solution:
   def solve(self, colors):
      n = len(colors)
      if len(set(colors)) == 1:
         return n
      if n <= 1:
         return n
      x = 0
      d = {"R": 1, "G": 2, "B": 3}
      for qux in colors:
         x ^= d[qux]
      return 2 if x == 0 else 1   
ob = Solution()
colors = ["G", "R", "G", "B", "R"]
print(ob.solve(colors))

इनपुट

["G", "R", "G", "B", "R"]

आउटपुट

1

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

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

  1. पायथन में गंतव्य तक पहुंचने के लिए न्यूनतम संख्या में ऊंचाई बढ़ाने का कार्यक्रम

    मान लीजिए कि हमारे पास एक मैट्रिक्स एम है जहां एम [आर] [सी] उस सेल की ऊंचाई का प्रतिनिधित्व करता है। अगर हम वर्तमान में ऊपरी बाएँ कोने में हैं और नीचे दाएँ कोने में जाना चाहते हैं। हम आसन्न कोशिकाओं (ऊपर, नीचे, बाएँ, दाएँ) में तभी जा सकते हैं जब उस आसन्न कोशिका की ऊँचाई वर्तमान कोशिका की ऊँचाई से कम

  1. संख्या के कारकों का न्यूनतम योग खोजने के लिए पायथन कार्यक्रम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे - समस्या कथन किसी संख्या इनपुट को देखते हुए, दी गई संख्या के गुणनखंडों का न्यूनतम योग ज्ञात करें। यहां हम सभी कारकों और उनके संगत योग की गणना करेंगे और फिर उनमें से न्यूनतम का पता लगाएंगे। इसलिए संख्या के गुणनफल का न्यूनतम योग ज्