Pagini recente »
Borderou de evaluare (job #506768)
|
Borderou de evaluare (job #229780)
|
Borderou de evaluare (job #106543)
|
cel_mai_greu_concurs_luca_prunoiu
|
Cod sursă (job #521935)
Cod sursă (job
#521935)
#include <bits/stdc++.h>
using namespace std;
ifstream f("lanterna.in");
ofstream g("lanterna.out");
//s1=2a1+a3+a4
//s2=a1+2a2+a4
//------------ -
//s1-s2=a1-2a2+a3
//
//
//s1>s2 <=> a1-2a2+a3>0
long long n,sf,fi,a1,a2,a3,a4,s,s1,s2;
int v[100011];
int main(){
f>>n;
for(int i=1; i<=n; ++i)
f>>v[i];
sort(v+1,v+n+1);
int i=n;
while(i>2){
s1=2*v[1]+v[i-1]+v[i];
s2=v[1]+2*v[2]+v[i];
if(s2<s1){
s=s+s2;
i=i-2;
}
else{
s=s+v[i]+v[1];
--i;
}
}
if(i==2)s=s+v[2];
else if(i==1)s=s+v[1];
g<<s<<'\n';
return 0;
}