#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <vector>
#include <iostream>
#include <set>
#include <map>
#define pb push_back
#define bg begin
#define ed end 
#define ins insert
using namespace std;

typedef long long ll;
typedef vector<int> vi;
typedef vector<vi> vii;

ll p[300005], sums[300005];

int main ()
{
	ll n;
	scanf ("%lld", &n);
	for (int i = 0; i < n; ++i)
	{
		scanf ("%lld", &p[i]);
	}			
	sort (p, p + n);
	for (int i = 0; i < n; ++i)
	{
		if (!i)
			sums[i] = p[i];
		else
			sums[i] += p[i] + sums[i-1];	
	}
	ll ans = 2LL*sums[n-1]; ll q = 0;	
	for (ll q = 0; q < n-2; ++q)
	{
		ans += (sums[n-1]- p[q]);
	}
	printf ("%lld\n", ans);	
	return 0;
}	