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

पायथन में सन्निकट सबएरे के अधिकतम गुणनफल को खोजने का प्रोग्राम


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

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

  • max_list := nums के आकार की सूची, और 0 से भरें
  • min_list := nums के आकार की सूची, और 0 से भरें
  • min_list := nums के आकार की सूची, और 0 से भरें
  • i के लिए 1 से nums की लंबाई तक की रेंज में
    • max_list[i] = max_list[i - 1]*nums[i], min_list[i - 1]*nums[i] और nums[i] का अधिकतम
    • min_list[i] = min_list[i - 1]*nums[i], nums[i], max_list[i - 1]*nums[i] का न्यूनतम
  • max_list का अधिकतम वापस करें

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

उदाहरण

class Solution(object):    def maxProduct(self, nums):       max_list = [0] * len(nums)       min_list = [0] * len(nums)       max_list[0] = nums[0]       min_list[0] = nums[0]       for i in range(1,len(nums)):          max_list[i] = max(max(max_list[i-1]*nums[i],min_list[i-1]*nums[i]),nums[i])          min_list[i] = min(min(min_list[i-1]*nums[i],nums[i]),max_list[i-1]*nums[i])       return max(max_list) ob1 = Solution() print(ob1.maxProduct([1,9,2,0,2,5]))

इनपुट

[1,9,2,0,2,5]

आउटपुट

18

  1. - पायथन में अद्वितीय सरणी के सन्निकट अंतराल खोजने का प्रोग्राम

    मान लीजिए हमारे पास nums नामक अद्वितीय संख्याओं की एक सूची है। हमें संख्याओं की एक क्रमबद्ध 2D मैट्रिक्स ढूंढनी है जहां प्रत्येक सूची एक समावेशी अंतराल को दर्शाती है जो nums में सन्निकट संख्याओं को सारांशित करती है। उदाहरण के लिए, यदि इनपुट nums = [10, 11, 12, 15, 16, 17, 28, 30] है, तो आउटपुट [[10

  1. - पायथन में सभी सन्निकट सबलिस्ट के योग का योग खोजने का प्रोग्राम

    मान लीजिए हमारे पास nums नामक संख्याओं की एक सूची है, अब हर सन्निकट सबअरे पर विचार करें। इनमें से प्रत्येक सबअरे का योग करें और इन सभी मानों का योग लौटाएं। अंत में, परिणाम को 10**9 + 7 से मोड करें। उदाहरण के लिए, यदि इनपुट है nums = [3, 4, 6], तो आउटपुट होगा 43, क्योंकि हमारे पास निम्नलिखित सबअरे ह

  1. - पायथन में अधिकतम उत्पाद सबएरे

    मान लीजिए हमारे पास nums नामक एक पूर्णांक ऐरे है, हमें एक ऐरे के भीतर सन्निकट सबएरे (कम से कम एक संख्या युक्त) ढूंढना है जिसका सबसे बड़ा उत्पाद हो। इसलिए यदि ऐरे [2,3,-2,4] है, तो आउटपुट 6 होगा, क्योंकि सन्निकट सबएरे [2,3] का अधिकतम उत्पाद है। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - max_li