题目:https://leetcode.cn/problems/maximum-strength-of-a-group/description/
sort从小到大排序,所有正值累乘,负值累乘最大偶数个。
class Solution {
public:
long long maxStrength(vector<int>& nums) {
if (nums.size() == 1)
return (long long)nums[0];
sort(nums.begin(), nums.end());
long long max = 0;
bool flag = 0;
for (int i = 0; i < nums.size(); i++)
{
if (i != nums.size() - 1 && nums[i] * nums[i + 1] > 0)
{
if (flag == 0)
{
max = 1;
flag = 1;
}
max *= nums[i] * nums[i + 1];
i++;
}
else if (i == nums.size() - 1 && nums[i] > 0)
{
if (flag == 0)
{
max = 1;
flag = 1;
}
max *= nums[i];
}
}
return max;
}
};