.
题目
Given an integer array nums, find three numbers whose product is maximum and return the maximum product.
Example 1:
Input: nums = [1,2,3]
Output: 6
Example 2:
Input: nums = [1,2,3,4]
Output: 24
Example 3:
Input: nums = [-1,-2,-3]
Output: -6
Constraints:
- 3 <= nums.length <= 10^4
- -1000 <= nums[i] <= 1000
.
代码
class Solution {
public:
int maximumProduct(vector<int>& nums) {
int size = nums.size();
if (size == 3)
{
return nums[0] * nums[1] * nums[2];
}
sort(nums.begin(), nums.end());
int p1 = nums[0] * nums[1] * nums[size - 1];
int p2 = nums[size - 1] * nums[size - 2] * nums[size - 3];
if (p1 > p2)
return p1;
else
return p2;
}
};
一次AC ^ _____________________________________________ ^