मान लीजिए हमारे पास nums नामक संख्याओं की सूची है, हमें तीन यूनिक एलिमेंट्स का सबसे बड़ा गुणनफल ढूंढना है।
तो, यदि इनपुट nums = [6, 1, 2, 4, -3, -4] है, तो आउटपुट 72 होगा, क्योंकि हम (-3) * (-4) * 6 = 72 गुणा कर सकते हैं।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे:
सूची nums को सॉर्ट करें
n := nums का आकार
maxScore := -inf
maxScore := maxScore और (nums[0] * nums[1] * nums[n - 1]) का अधिकतम
maxScore := maxScore और (nums[n - 3] * nums[n - 2] * nums[n - 1]) का अधिकतम
maxScore लौटाएं
उदाहरण
बेहतर समझ के लिए निम्न कार्यान्वयन देखें
def solve(nums):
nums.sort()
n = len(nums)
maxScore = -10000
maxScore = max(maxScore, nums[0] * nums[1] * nums[n - 1])
maxScore = max(maxScore, nums[n - 3] * nums[n - 2] * nums[n - 1])
return maxScore
nums = [6, 1, 2, 4, -3, -4]
print(solve(nums))
इनपुट
[6, 1, 2, 4, -3, -4]
आउटपुट
72