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

पायथन में जोड़ीदार आसन्न योग को छोटा बनाने का प्रोग्राम


मान लीजिए हमारे पास nums नामक गैर-ऋणात्मक संख्याओं की एक सूची और एक गैर-ऋणात्मक मान k है। अब मान लीजिए एक ऑपरेशन है जहां हम nums में एक धनात्मक संख्या चुनते हैं और इसे 1 से घटाते हैं। हमें आवश्यक ऑपरेशन की न्यूनतम संख्या ढूंढनी है जैसे कि सूची में प्रत्येक आसन्न जोड़ी का योग <= k हो। यदि उत्तर बहुत बड़ा है, तो परिणाम मॉड 10^9 + 7 वापस करें।

इसलिए, यदि इनपुट nums = [4, 6, 2, 5], k = 6 जैसा है, तो आउटपुट 5 होगा, क्योंकि हम सूची को [3, 3, 1, 4] में घटा सकते हैं जो कुल 5 कमी है। यहां प्रत्येक आसन्न जोड़ी का योग <= 6 है।

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

  • m = 10^9 + 7
  • ans := 0
  • i के लिए 0 से nums के आकार - 1 तक की रेंज में, करें
    • sm := nums[i] + nums[i + 1]
    • diff := sm - k और 0 का अधिकतम
    • nums[i + 1] := nums[i + 1] - diff
    • यदि nums[i + 1] < 0, तो
      • nums[i + 1] := 0
    • ans := ans + diff
  • ans मॉड m वापस करें

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

उदाहरण

m = 10 ** 9 + 7 class Solution:    def solve(self, nums, k):       ans = 0       for i in range(0, len(nums) - 1):          sm = nums[i] + nums[i + 1]          diff = max(sm - k, 0)          nums[i + 1] -= diff          if nums[i + 1] < 0:             nums[i + 1] = 0          ans += diff       return ans % m ob = Solution() nums = [4, 6, 2, 5] k = 6 print(ob.solve(nums, k))

इनपुट

[4, 6, 2, 5], 6

आउटपुट

5

  1. Python में n-ary ट्री की कॉपी बनाने का प्रोग्राम Python में n-ary ट्री की कॉपी बनाने का प्रोग्राम

    मान लीजिए, हमें एक n-ary ट्री दिया गया है जिसका रूट root है। हमें पूरे n-ary ट्री की एक कॉपी बनानी है और दोनों ट्री का प्रीऑर्डर ट्रैवर्सल करना है। कॉपी किए गए ट्री को दूसरे रूट नोड का उपयोग करके स्टोर करना है। ट्री की नोड संरचना नीचे दी गई है: Node: value: children: इसलिए, यदि इनपुट निम

  1. पायथन में भारतीय झंडा बनाने का प्रोग्राम पायथन में भारतीय झंडा बनाने का प्रोग्राम

    ग्राफ बनाने के लिए पायथन की लाइब्रेरीज़ में बहुत व्यापक विशेषताएं हैं जो न केवल हमें चार्ट देती हैं बल्कि झंडे जैसे अन्य डायग्राम बनाने की सुविधा भी देती हैं। उस अर्थ में उन मॉड्यूल्स में एक कलात्मक स्पर्श होता है। इस लेख में हम देखेंगे कि numpy और matplotlib लाइब्रेरीज़ का उपयोग करके भारतीय झंडा कै

  1. - Python प्रोग्राम में callable() फ़ंक्शन

    इस ट्यूटोरियल में, हम अंतर्निहित विधि callable() पर चर्चा करने जा रहे हैं। यह एक आर्गुमेंट लेता है और लौटाता है कि आर्गुमेंट कॉल करने योग्य है या नहीं। यदि आप कोई फ़ंक्शन या क्लास लेते हैं, तो वे कॉल करने योग्य हैं। इंटीजर, फ्लोट, स्ट्रिंग आदि जैसे स्थिरांक कॉल करने योग्य नहीं हैं। उदाहरण आइए कुछ उ