27 lines
474 B
C++
27 lines
474 B
C++
#include <iostream>
|
|
#include <queue>
|
|
using namespace std;
|
|
int main(){
|
|
ios::sync_with_stdio(false);
|
|
cin.tie(nullptr);
|
|
int n;
|
|
cin >> n;
|
|
priority_queue<int, vector<int>, greater<int>> q;
|
|
for(int i = 0; i < n; i++){
|
|
int a;
|
|
cin >> a;
|
|
q.emplace(a);
|
|
}
|
|
int value = 0;
|
|
int min1 = 0, min2 = 0;
|
|
while(q.size() > 1){
|
|
min1 = q.top(); q.pop();
|
|
min2 = q.top(); q.pop();
|
|
int tmp = min1 + min2;
|
|
value += tmp;
|
|
q.emplace(tmp);
|
|
}
|
|
cout << value<< endl;
|
|
return 0;
|
|
}
|