Pagini recente » Cod sursa (job #1109857) | Cod sursa (job #285810) | Cod sursa (job #584317) | Cod sursa (job #735400) | Cod sursa (job #1228337)
#include<cstdio>
#include<algorithm>
long long v[100005], ms;
int n, b, e, s;
bool calibb(){
int ib=b;
for(int i=e+1;i<n;i++){
s=(n-i)*v[i]+(i-e)*v[e];
if(s>ms)b=i,ms=s;
}
return b!=ib;
}
bool calibe(){
int ie=e;
for(int i=0;i<b;i++){
s=(b-i)*v[i]+(n-b)*v[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;
}