#include <bits/stdc++.h>
const int md = 1e9 + 7;
const long long hs = 199;
using namespace std;
int n, x;
long long ans = 0;
multiset<long long> s;
void take(int am) {
  long long add = 0;
  while (am--) add += *s.begin(), s.erase(s.begin());
  ans += add, s.insert(add);
}
int main() {
  ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  cin >> n;
  for (int i = 0; i < n; i++) cin >> x, s.insert(x);
  if (n % 2 == 0) take(2), n--;
  while (n > 1) take(3), n -= 2;
  cout << ans << '\n';
}
