文章

1

粉丝

10

获赞

0

访问

563

头像
哈夫曼树 题解:优先队列——排坑
P1382 北京邮电大学/兰州大学2019年机试
发布于2024年5月22日 21:16
阅读数 563

 使用优先队列

啊啊啊啊,服辣!!题目说输入多组数据。。。所以要在最外面while(cin>>n)

de了好久 Orzzz

#include<bits/stdc++.h>
using namespace std;

int main()
{
	int n;
	while(cin>>n)
	{
		priority_queue<int,vector<int>,greater<int>>q;
		int res=0;
		//入队
		while(n--)
		{
			int a;
			cin>>a;
			q.push(a);
		}

		while(q.size()>1)
		{
			int a=q.top();
			q.pop();
			a+=q.top();
			q.pop();

			res+=a;
			q.push(a);
		}
		cout<<res<<'\n';
	}
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发