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

पायथन में उनमें से कुछ तत्वों को पॉप करने के बाद सभी ढेर के अधिकतम योग की जांच करने का कार्यक्रम

मान लीजिए कि हमारे पास ढेर की एक सूची है, हम कोई भी ढेर या ढेर ले सकते हैं और उसमें से कितने भी तत्व निकाल सकते हैं। हमें उस अधिकतम योग का पता लगाना है जिसे प्राप्त किया जा सकता है ताकि सभी ढेरों का योग मूल्य समान हो।

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

  • पॉप [6] पहले स्टैक से हमें मिलता है [3, 4, 5] योग 12 है।

  • पॉप [4,4] दूसरे स्टैक से हमें मिलता है [5, 6, 1] योग 12 है।

  • पॉप [2,2] तीसरे स्टैक से हमें मिलता है [10, 2] योग 12 है।

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

  • रकम :=एक खाली नक्शा

  • स्टैक में प्रत्येक stk के लिए, करें

    • एस:=0

    • stk में प्रत्येक n के लिए, करें

      • एस:=एस + एन

      • योग [s] :=योग [s] + 1

  • उत्तर :=0

  • रकम के प्रत्येक प्रमुख मूल्य जोड़े (एस, एफ) के लिए, करें

    • अगर f>=स्टैक काउंट और s> ans, तो

      • उत्तर:=एस

  • वापसी उत्तर

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

उदाहरण

from collections import defaultdict
class Solution:
   def solve(self, stacks):
      sums = defaultdict(int)
      for stk in stacks:
         s = 0
         for n in stk:
            s += n
            sums[s] += 1
         ans = 0
         for s, f in sums.items():
            if f >= len(stacks) and s > ans:
               ans = s
         return ans
ob1 = Solution()
stacks = [
   [3, 4, 5, 6],
   [5, 6, 1, 4, 4],
   [10, 2, 2, 2]
]
print(ob1.solve(stacks))

इनपुट

stacks = [ [3, 4, 5, 6], [5, 6, 1, 4, 4], [10, 2, 2, 2] ]

आउटपुट

12

  1. पायथन में सभी संभावित वैध पथों से अधिकतम अंक खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास दो सरणियाँ हैं nums1 और nums2। एक वैध पथ निम्नानुसार परिभाषित किया गया है - पार करने के लिए nums1 या nums2 चुनें (इंडेक्स-0 से)। सरणी को बाएँ से दाएँ पार करें। अब, यदि हम nums1 और nums2 में मौजूद किसी भी मान से आगे बढ़ रहे हैं तो हम पथ को अन्य सरणी में बदल सकते हैं। य

  1. पायथन में एक पेड़ के सभी तत्वों का योग खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एक बाइनरी ट्री है जिसमें कुछ मान हैं, हमें ट्री के सभी मानों का योग ज्ञात करना है। तो, अगर इनपुट पसंद है तो आउटपुट 14 . होगा इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - फ़ंक्शन रिकर्स () को परिभाषित करें। यह नोड लेगा वैल:=नोड का मान यदि नोड का बायां भाग शून्

  1. पायथन में ढेर की सूची से पॉप किए गए k तत्वों की अधिकतम राशि खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास ढेर की एक सूची है और एक पूर्णांक k है। हमें स्टैक के किसी भी संयोजन से बिल्कुल k तत्वों को पॉप करने से प्राप्त किया जा सकने वाला अधिकतम संभव योग खोजना होगा। इसलिए, यदि इनपुट स्टैक की तरह है =[[50, -4, -15], [2], [6, 7, 8]], k =4, तो आउटपुट 39 होगा, क्योंकि हम सभी को पॉप ऑफ कर