本蒟蒻30分,望大佬救救
查看原帖
本蒟蒻30分,望大佬救救
1367731
KellyH楼主2024/7/23 15:40
#include<bits/stdc++.h>
using namespace std;
priority_queue<int,vector<int>,greater<int>>q;//优先队列 
int n,x,ans;
int main()
{
	cin>>n; 
	for(int i=1;i<=n;i++) 
	{
		cin>>x;//输入 
		q.push(x);//入队 
	}
	for(int i=2;i<=n;i++) 
	{
		int x1=q.top();//取最小值 
		q.pop();//不需要了,扔掉 
		int x2=q.top();//再取最小值 
		q.pop();//不需要了,扔掉 
		int sum=x1+x2;//合并 
		ans+=sum;//累加 
		q.push(sum);//入队 
	}
	cout<<ans;//输出 
	return 0;
}
2024/7/23 15:40
加载中...