ybt 1369 合并果子
#include <iostream>
#include <algorithm>
#include<queue>
using namespace std;
int main()
{
int n,i,j;
int t1,t2,w,temp;
int sum;
priority_queue<int,vector<int>,greater<int> > qu;//从小到大出队
cin>>n;
sum=0;
for(i=0;i<n;i++)
{cin>>temp;qu.push(temp);}
for(i=0;i<n-1;i++)
{
t1=qu.top();
qu.pop();
t2=qu.top();
qu.pop();
w=t1+t2;
qu.push(w);
sum=sum+t1+t2;
}//消耗体力就是将两个最小的相加之后,再叠加最小的两个
cout<<sum;
return 0;
}
浙公网安备 33010602011771号