```cpp
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<cstdlib>
#include<queue>
using namespace std;
priority_queue<int,vector<int>,greater<int> > q;
int a,b,c,sum=0;
int N[10005];
int main()
{
cin>>a;
for(int d=1;d<=a;d++)cin>>N[d],q.push(N[d]);
while(a>=2)
{
b=q.top();
q.pop();
c=q.top();
q.pop();
b=c+b;
sum+=b;
q.push(b);
a--;
}
cout<<sum<<endl;
return 0;
}
```
by wsdsg @ 2016-04-24 13:27:19
你的代码是最普通的写法了
by Megumi_Cold @ 2016-04-24 15:44:15
调用太多库了。。。没用的不能删掉吗
by losered @ 2016-04-24 16:42:38
用优先队列不是很好嘛
by 1124828077ccj @ 2016-04-26 19:53:27