#include<cstdio>
#define maxlongint 2147483647
long n,a[10001],ans,i,k;
void Adjustheap(long s)
{
long j=0,tmp;
while (j!=maxlongint){
tmp=a[s]; j=maxlongint;
if (s*2<=n && a[s*2]<tmp){
tmp=a[s*2]; j=s*2;
}
if (s*2+1<=n && a[s*2+1]<tmp){
tmp=a[s*2+1]; j=s*2+1;
}
if (j!=maxlongint) {
long k=a[s]; a[s]=tmp; a[j]=k; s=j;
}
}
}
void Buildheap(){
for (i=n>>1;i;i--) Adjustheap(i);
}
int main()
{
freopen("fruit.in","r",stdin);
freopen("fruit.out","w",stdout);
scanf("%ld",&n);
for (i=1;i<=n;i++) scanf("%ld",&a[i]);
Buildheap();
while (n>1){
k=0;
k+=a[1]; a[1]=a[n]; n--; Adjustheap(1);
k+=a[1]; a[1]=k; Adjustheap(1);
ans+=k;
}
printf("%ld\n",ans);
// getchar(); getchar();
}