#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=1e6+10;
int n;
int a[N];
queue<int> q,p;
int x,y;
int ans;
signed main(){
cin>>n;
int temp;
for(int i=1;i<=n;i++){
cin>>temp;
a[temp]++;
}
for(int i=1;i<=N;i++){
while(a[i]>0){
a[i]--;
q.push(i);
}
}
for(int i=1;i<n;i++){//合并n-1次即可
if((q.front()<p.front()&&q.empty()==false)||p.empty()==true){
x=q.front();
q.pop();
} else{
x=p.front();
p.pop();
}
if((q.front()<p.front()&&q.empty()==false)||p.empty()==true){
y=q.front();
q.pop();
}else{
y=p.front();
p.pop();
}
ans+=(x+y);
int temp=(x+y);
p.push(temp);
// cout<<ans<<endl;
}
cout<<ans;
return 0;
}