Leetcode 628 Solution
This article provides solution to leetcode question 628 (maximum-product-of-three-numbers)
Access this page by simply typing in "lcs 628" in your browser address bar if you have bunnylol configured.
Leetcode Question Link
https://leetcode.com/problems/maximum-product-of-three-numbers
Solution
class Solution {
public:
int maximumProduct(vector<int>& nums) {
int max1 = INT_MIN;
int max2 = INT_MIN;
int max3 = INT_MIN;
for (auto num : nums)
{
if (num >= max1)
{
max3 = max2;
max2 = max1;
max1 = num;
}
else if (num >= max2)
{
max3 = max2;
max2 = num;
}
else if (num >= max3)
max3 = num;
}
int min1 = INT_MAX;
int min2 = INT_MAX;
for (auto num : nums)
{
if (num <= min1)
{
min2 = min1;
min1 = num;
}
else if (num <= min2)
min2 = num;
}
return max(max1 * max2 * max3, max1 * min1 * min2);
}
};