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

पायथन में कार पूलिंग

मान लीजिए कि कोई वाहन है जिसमें खाली सीटों की क्षमता है, जो शुरू में यात्रियों के लिए उपलब्ध है। वाहन केवल पूर्व की ओर चलता है, इसलिए हम पश्चिम की ओर मुड़कर नहीं चल सकते। हमने यात्राओं की एक सूची दी है, यात्रा [i] =[num_passengers, start_location, end_location], जिसमें ith यात्रा के बारे में जानकारी है:, ताकि यात्रियों की संख्या और उन्हें लेने के लिए स्थानों की संख्या हो। और उन्हें छोड़ दो। यहां स्थानों को हमारे वाहन के प्रारंभिक स्थान से पूर्व की ओर जाने वाले किलोमीटर की संख्या के रूप में दिया गया है। हमारा मॉड्यूल सही होगा यदि और केवल तभी जब सभी यात्रियों को सभी दी गई यात्राओं के लिए उठाना और छोड़ना संभव हो। इसलिए अगर यात्राएं [[2,1,5],[3,3,7]] जैसी हैं और क्षमता 5 है, तो आउटपुट सही होगा।

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

  • स्टॉप नामक एक सरणी बनाएं, आकार 1000, और इसे 0 से भरें
  • यात्राओं में मेरे लिए
    • स्टॉप[i[1]] :=स्टॉप[i[1]] + i[0]
    • स्टॉप[i[2]] :=स्टॉप[i[1]] - i[0]
  • आई स्टॉप में −
      . के लिए
    • क्षमता:=क्षमता - मैं
    • यदि क्षमता <0 है, तो झूठी वापसी करें
  • सही होने पर वापस लौटें>=0

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

उदाहरण

class Solution(object):
   def carPooling(self, trips, capacity):
      stops = [0 for i in range(1001)]
      for i in trips:
         stops[i[1]]+=i[0]
         stops[i[2]]-=i[0]
      for i in stops:
         capacity-=i
         if capacity<0:
            return False
      return capacity>=0
ob = Solution()
print(ob.carPooling([[2,1,5],[3,3,7]],5))

इनपुट

[[2,1,5],[3,3,7]]
5

आउटपुट

True

  1. पायथन - पांडस डेटाफ्रेम के सबसेट का चयन कैसे करें

    मान लें कि Microsoft Excel में खोली गई हमारी CSV फ़ाइल की सामग्री निम्नलिखित हैं - सबसे पहले, CSV फ़ाइल से पंडों के डेटाफ़्रेम में डेटा लोड करें - dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\SalesData.csv") उपसमुच्चय का चयन करने के लिए वर्गाकार कोष्ठकों का प्रयोग करें। कोष्ठक म

  1. issuperset () पायथन में

    इस लेख में, हम पायथन में issuperset() और विभिन्न क्षेत्रों में इसके कार्यान्वयन के बारे में जानेंगे। यह विधि बूलियन ट्रू लौटाती है यदि एक सेट बी के सभी तत्वों में सभी तत्व सेट ए होते हैं जो एक तर्क के रूप में पारित होते हैं और यदि ए के सभी तत्व बी में मौजूद नहीं होते हैं तो झूठा रिटर्न देता है। इस

  1. पायथन में प्रक्रियाओं का तुल्यकालन और पूलिंग

    प्रक्रियाओं के बीच सिंक्रनाइज़ेशन मल्टीप्रोसेसिंग एक पैकेज है जो एपीआई का उपयोग करके स्पॉनिंग प्रक्रियाओं का समर्थन करता है। इस पैकेज का उपयोग स्थानीय और दूरस्थ दोनों संगामिति के लिए किया जाता है। इस मॉड्यूल का उपयोग करके, प्रोग्रामर किसी मशीन पर कई प्रोसेसर का उपयोग कर सकता है। यह विंडोज़ और यूनिक