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

यह जांचने के लिए कार्यक्रम कि क्या हम पायथन में दी गई सूची में प्रत्येक यात्री को उठा सकते हैं और छोड़ सकते हैं

मान लीजिए कि हमारे पास अनुरोधित_ट्रिप्स नामक एक मैट्रिक्स है जहां प्रत्येक पंक्ति में [start_x, end_x, num_passengers] है, और हमारे पास क्षमता मान भी है। अब प्रत्येक अनुरोधित यात्रा num_यात्री यात्रियों को start_x पर लेने और उन्हें end_x पर छोड़ने के लिए कहती है। हमारे पास क्षमता के साथ एक कार भी है जो दी गई है, और स्थिति x =0 से शुरू होती है। हम प्रत्येक यात्री को उठाना चाहते हैं और केवल दाईं ओर जा सकते हैं, हमें यह जांचना होगा कि क्या हम सभी को उठा सकते हैं और छोड़ सकते हैं।

इसलिए, यदि इनपुट ट्रिप =[[1, 25, 2], [3, 4, 3], [5, 12, 3]] क्षमता =6 जैसा है, तो आउटपुट सही होगा

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

  • ईवेंट :=एक नई सूची

  • यात्राओं में प्रत्येक सेट (एसएक्स, पूर्व, एनपी) के लिए, करें

    • इवेंट के अंत में जोड़ी (sx, np) डालें

    • इवेंट के अंत में जोड़ी डालें (उदा, −np)

  • ले जाना :=0

  • घटनाओं की सूची में प्रत्येक जोड़ी (लोक, डेल्टा) के लिए (क्रमबद्ध क्रम में), करें

    • ले जाना :=ले जाना + डेल्टा

    • अगर वहन> क्षमता, तो

      • झूठी वापसी

  • सही लौटें

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

उदाहरण

class Solution:
   def solve(self, trips, capacity):
      events = []
      for sx, ex, np in trips:
         events.append((sx, np))
         events.append((ex, -np))
      carrying = 0
      for loc, delta in sorted(events):
         carrying += delta
         if carrying > capacity:
            return False
      return True
ob = Solution()
trips = [
   [1, 25, 2],
   [3, 4, 3],
   [5, 12, 3]
]
capacity = 6
print(ob.solve(trips, capacity))

इनपुट

trips = [
[1, 25, 2],
[3, 4, 3],
[5, 12, 3] ]
capacity = 6

आउटपुट

True

  1. यह जांचने के लिए प्रोग्राम कि ब्लॉक की दी गई सूची x =y लाइन पर सममित है या नहीं, पायथन में

    मान लीजिए हमारे पास संख्याओं की एक सूची है जिसे अंक कहा जाता है। और यह वर्गाकार ब्लॉकों की ऊंचाई का प्रतिनिधित्व कर रहा है, हमें यह जांचना होगा कि आकृति y =x रेखा पर सममित है या नहीं। इसलिए, यदि इनपुट nums =[7, 5, 3, 2, 2, 1, 1] जैसा है, तो आउटपुट सही होगा इसे हल करने के लिए, हम इन चरणों का पालन

  1. पायथन में दिया गया पेड़ सममित पेड़ है या नहीं, यह जांचने के लिए कार्यक्रम

    मान लीजिए हमारे पास एक बाइनरी ट्री है। हमें यह जांचना है कि वृक्ष सममित वृक्ष है या नहीं। एक पेड़ को सममित कहा जाएगा यदि वह समान है जब हम उसका दर्पण प्रतिबिम्ब लेते हैं। इन दो पेड़ों से, पहला सममित है, लेकिन दूसरा नहीं है। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे। हम निम्नलिखित चरणों क

  1. पायथन में दिया गया ग्राफ द्विदलीय है या नहीं, यह जांचने के लिए कार्यक्रम

    मान लीजिए कि हमारे पास एक अप्रत्यक्ष ग्राफ है, हमें यह जांचना है कि ग्राफ द्विदलीय है या नहीं। जैसा कि हम जानते हैं कि एक ग्राफ द्विदलीय होता है जब हम ग्राफ के नोड्स को दो सेट ए और बी में विभाजित कर सकते हैं जैसे कि ग्राफ के प्रत्येक किनारे {यू, वी} में ए में एक नोड और बी में दूसरा नोड वी होता है।