Python查詢三個唯一項最大乘積的程式
假設我們有一個數字列表,稱為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
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP