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

पायथन में सभी स्टॉप से ​​गुजरने के लिए न्यूनतम संख्या में बसों को खोजने के लिए कार्यक्रम की आवश्यकता होती है

मान लीजिए कि हमारे पास नंबरों की एक सूची है जिसे nums कहा जाता है और वह बस स्टॉप को एक लाइन पर दिखा रहा है जहां nums[i] उस समय को दर्शाता है जब एक बस को स्टेशन i पर आना चाहिए। अब जबकि बसें केवल आगे बढ़ सकती हैं, हमें सभी स्टॉप से ​​गुजरने के लिए आवश्यक बसों की न्यूनतम संख्या ज्ञात करनी होगी।

इसलिए, यदि इनपुट संख्या =[1, 2, 7, 9, 3, 4] की तरह है, तो आउटपुट 2 होगा, क्योंकि एक बस स्टॉप ले सकती है [1, 2, 3, 4] और दूसरी कर सकती है [ 7, 9]।

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

  • उत्तर:=0

  • देखा :=एक सूची जिसकी लंबाई अंकों के समान है और शुरू में असत्य से भरी हुई है

  • प्रत्येक अनुक्रमणिका i और संगत n के लिए अंकों में, करें

    • अगर देखा [i] गलत है, तो

      • देखा [i] :=सच

      • उत्तर:=उत्तर + 1

      • पिछला :=n

      • j के लिए i+1 से लेकर अंकों के आकार तक, करें

        • अगर nums[j]> पिछला और देखा गया [j] गलत है, तो

          • देखा [जे] :=सच

          • पिछला:=अंक[j]

  • वापसी उत्तर

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

उदाहरण

class Solution:
   def solve(self, nums):
   ans = 0
   seen = [False] * len(nums)
   for i, n in enumerate(nums):
      if not seen[i]:
         seen[i] = True
         ans += 1
         prev = n
   for j in range(i+1, len(nums)):
      if nums[j] > prev and not seen[j]: seen[j] = True
         prev = nums[j]
   return ans
ob = Solution()
nums = [1, 2, 7, 9, 3, 4]
print(ob.solve(nums))

इनपुट

[1, 2, 7, 9, 3, 4]

आउटपुट

2

  1. पायथन का उपयोग करके सभी नोड्स तक पहुंचने के लिए न्यूनतम संख्या में कोने खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एक निर्देशित चक्रीय ग्राफ है, जिसमें n कोने हैं और नोड्स 0 से n-1 तक गिने जाते हैं, ग्राफ को किनारे की सूची द्वारा दर्शाया जाता है, जहां किनारों [i] =(यू, वी) नोड यू से एक निर्देशित किनारे का प्रतिनिधित्व करता है। नोड वी। हमें शिखर का सबसे छोटा सेट ढूंढना है जिससे ग्राफ में सभ

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

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

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

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