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