////合并果子
#include<stdio.h>
#include<iostream>
#include<queue>
using namespace std;
int main()
{
priority_queue<int, vector<int>, greater<int> > q;
int i,t,n;
scanf("%d",&n);
for(i = 1; i <= n; ++i)
{
scanf("%d",&t);
q.push(t);
}
int sum = 0,res = 0;
while(--n)
{
sum = q.top(); q.pop();
sum += q.top(); q.pop();
q.push(sum);
res += sum;
}
printf("%d\n",res);
return(0);
}
评论1