记录编号 465909 评测结果 AAAAAAAAAA
题目名称 [NOIP 2004]合并果子 最终得分 100
用户昵称 Gravatarsnake 是否通过 通过
代码语言 C++ 运行时间 0.030 s
提交时间 2017-10-28 09:58:11 内存使用 0.32 MiB
显示代码纯文本
//#include<iostream>
#include<fstream>
#include<climits>
#include<queue>
#include<vector>

using namespace std;

ifstream cin("fruit.in");ofstream cout("fruit.out");

struct node
{
	int num;
	friend bool operator < (node x,node y)
	{
		return x.num>y.num;
	}
};
	
priority_queue<node> q;

int main()
{
	int n;
	long long r=0;
	node a,temp,temp2;
	
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>temp.num;
		q.push(temp);
	}
	while(q.size()>1)
	{
		temp=q.top();
		q.pop();
		temp2=q.top();
		q.pop();
		r+=temp2.num+temp.num;
		temp.num=temp.num+temp2.num;
		q.push(temp);
	}
	cout<<r;
	return 0;
}