C ++中数组中的最大乘积四倍(大小为4的子序列)

在本教程中,我们将讨论一个程序,以查找数组中最大乘积四倍(大小为4的子序列)。

为此,我们将提供一个整数数组。我们的任务是从数组中找出元素数量最大的四倍。

示例

#include <bits/stdc++.h>
using namespace std;
//finding maximum product of quadruple
int maxProduct(int arr[], int n) {
   if (n < 4)
      return -1;
   int max_product = INT_MIN;
   for (int i = 0; i < n - 3; i++)
      for (int j = i + 1; j < n - 2; j++)
         for (int k = j + 1; k < n - 1; k++)
            for (int l = k + 1; l < n; l++)
               max_product = max(max_product,
               arr[i] * arr[j] * arr[k] * arr[l]);
   return max_product;
}
int main() {
   int arr[] = { 10, 3, 5, 6, 20 };
   int n = sizeof(arr) / sizeof(arr[0]);
   int max = maxProduct(arr, n);
   if (max == -1)
      cout << "No Quadruple Exists";
   else
      cout << "Maximum product is " << max;
   return 0;
}

输出结果

Maximum product is 6000