#include
#include
using namespace std;
priority_queue,greater >q;//代表数字小的优先队列
int main()
{
int n,temp,x,y,ans=0;
cin>>n;
for(int i=0;i {
cin>>temp;
q.push(temp);
}
while(q.size()>1)
{
x=q.top();
q.pop();
y=q.top();
q.top();
q.push(x+y);
ans+=x+y;
}
cout<<ans;
return 0;
}
看下while(q.size()>1)是不是死循环了。