#include<iostream>
#include<cstdio>
#include<queue>
using namespace std;
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
priority_queue<int,vector<int>,greater<int>>my;
while(n--!=0)
{
int x;
scanf("%d",&x);
my.push(x);
}
int answer=0;
while(my.size()>1)
{
int a=my.top();
my.pop();
int b=my.top();
my.pop();
my.push(a+b);
answer+=a+b;
}
printf("%d\n",answer);
}
return 0;
}
哈夫曼树
最新推荐文章于 2020-10-27 18:22:17 发布