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

पायथन में अधिकांश k नकारात्मक संचालन करके अधिकतम योग प्राप्त करने का कार्यक्रम

मान लीजिए कि हमारे पास nums नामक तत्वों की एक सूची है, हमारे पास एक और मान k भी है। आइए अब हम एक संक्रिया पर विचार करें जहां हम अंकों में से एक अवयव का चयन करते हैं और उसे नकारते हैं। हम ठीक k संख्या में संक्रियाएँ कर सकते हैं। हमें अधिकतम परिणामी योग प्राप्त करना होगा जो उत्पन्न किया जा सकता है।

इसलिए, यदि इनपुट संख्या =[2, 1, -6, -2] k =3 की तरह है, तो आउटपुट 9 होगा, यदि हम -6 और -2 को अस्वीकार करते हैं और 1 को [2, -1, 6 मिलेगा , 2] और इसका योग 9 है।

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

  • n :=अंकों का आकार

  • अगर n 0 के समान है, तो

    • वापसी 0

  • सूची संख्या क्रमित करें

  • idx के लिए 0 से n-1 की सीमा में, करें

    • अगर nums[idx] <0 और k> 0, तो

      • कश्मीर:=के - 1

      • nums[idx] :=-nums[idx]

  • अगर k विषम है, तो

    • वापसी (अंकों में मौजूद सभी तत्वों का योग) - (2 * न्यूनतम अंक)

  • अंकों में मौजूद सभी तत्वों का योग लौटाएं

उदाहरण

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

def solve(nums, k):
   n = len(nums)
   if n == 0:
      return 0

   nums.sort()
   for idx in range(n):
      if nums[idx] < 0 and k > 0:
         k -= 1
         nums[idx] *= -1

   if k & 1 == 1:
      return sum(nums) - 2 * min(nums)

   return sum(nums)

nums = [2, 1, -6, -2]
k = 3
print(solve(nums, k))

इनपुट

[2, 1, -6, -2], 3

आउटपुट

9

  1. पायथन में सन्निहित उपसरणी का अधिकतम उत्पाद खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास अंक नामक एक सरणी है, हमें एक सरणी के भीतर एक सन्निहित उपसरणी के तत्वों का उत्पाद खोजना होगा (जिसमें कम से कम एक संख्या हो) जिसमें सबसे बड़ा उत्पाद हो। तो अगर सरणी [1,9,2,0,2,5] है, तो आउटपुट 18 होगा, क्योंकि सन्निहित उपसरणी [1,9,2] में अधिकतम उत्पाद है। इसे हल करने के लिए, हम

  1. पायथन में अधिकतम योग के साथ सन्निहित सबलिस्ट का योग खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एक सरणी ए है। हमें उस सन्निहित उपन्यास को खोजना है जिसमें अधिकतम योग है, और उसका योग भी वापस करना है। तो अगर सरणी ए ए =[-2,1,-3,4,-1,2,1,-5,4] की तरह है, तो योग 6 होगा। और सबरेरे [4, -1, 2, 1]. इसे हल करने के लिए हम गतिशील प्रोग्रामिंग दृष्टिकोण का उपयोग करने का प्रयास करेंगे

  1. पायथन में एन को 1 तक कम करने के लिए अधिकतम संचालन खोजें

    मान लीजिए कि हमारे पास दो संख्याएँ P और Q हैं और वे एक संख्या N =(P!/Q!) बनाते हैं। हमें यथासंभव अधिक से अधिक संक्रियाएँ निष्पादित करके N को घटाकर 1 करना होगा। प्रत्येक ऑपरेशन में, कोई N को N/X से बदल सकता है, जब N, X से विभाज्य हो। इसलिए, यदि इनपुट A =7, B =4 जैसा है, तो आउटपुट 4 होगा क्योंकि N 21