合并果子
#include<iostream>
#include<set>
using namespace std;
int main() {
multiset<int> s;//用multiset类型:int
int n,x,cost=0;//初始化
cin>>n;
for(int i=0;i<n;i++) {
cin>>x; s.insert(x);
}
for(int i=0;i<n-1;i++){//合并过程
int a=*s.begin(); s.erase(s.begin());//头
int b=*s.begin(); s.erase(s.begin());//第二个
s.insert(a+b); //插入总和
cost += a+b;//花费增加
}
cout<<cost<<endl;
return 0;
}