Pagini recente » Cod sursa (job #569860) | Cod sursa (job #2749928) | Cod sursa (job #1893583) | Cod sursa (job #1081064) | Cod sursa (job #1228339)
#include<cstdio>
#include<algorithm>
long long v[100005], ms, s;
int n, b, e;
bool calibb(){
int ib=b;
for(int i=e+1;i<n;i++){
s = v[i]*(n-i) + v[e]*(i-e);
if(s>ms)b=i,ms=s;
}
return b!=ib;
}
bool calibe(){
int ie=e;
for(int i=0;i<b;i++){
s = v[i]*(b-i) + v[b]*(n-b);
if(s>ms)e=i,ms=s;
}
return e!=ie;
}
int main(){
freopen("avioane.in","r",stdin);
freopen("avioane.out","w",stdout);
scanf("%d",&n);
for(int i=0;i<n;i++)
scanf("%lld",v+i);
std::sort(v,v+n);
e=-1,b=n;
while(calibe() || calibb());
printf("%lld",ms);
return 0;
}