#include using namespace std; // 升序队列,小顶堆 priority_queue, greater> q; int res; int main() { int n; cin >> n; while (n--) { int x; cin >> x; q.push(x); } while (q.size() > 1) { int a = q.top(); q.pop(); int b = q.top(); q.pop(); res += a + b; q.push(a + b); } cout << res << endl; return 0; }