【发布时间】:2017-03-06 17:41:25
【问题描述】:
今天我被以下问题卡住了。请提供一些线索,声明如下:
给定一个大小为n 的数组A[]。在以下约束条件下最大化A[i]*A[j]*A[k]:
- i
- A[i]
我尝试的代码如下:
#include<iostream>
using namespace std;
int main(){
int A[]={1,3,6,8,9};
int max=0;
int n=sizeof(A)/sizeof(A[0]);
for(int i=0;i<n;i++)
for(int j=i+1;j<n;j++)
for(int k=j+1;k<n;k++)
{
if(A[i]<A[j]&&A[j]<A[k]&&max<A[i]*A[j]*A[k])
max=A[i]*A[j]*A[k];
}
cout<<max;
return 0;
}
【问题讨论】:
-
你是不是不小心发帖了?
-
你现在做了什么?
-
不,但我是这个网站的新手,所以如果我犯了错误,很抱歉。
-
我已经找到了 O(n^3) 的解决方案,但效率不高。你能建议其他技术吗..
-
请提供您尝试的解决方案的代码
标签: algorithm complexity-theory maximize