60
查看原帖
60
793625
Pink_Cut_Tree楼主2023/8/16 09:24

已加速读入,已开 O2

#include<iostream>
#include<queue>
using namespace std;
long long n,ans,tmp;
priority_queue<long long,vector<long long>,greater<long long> >PQ;
int main(){
	ios::sync_with_stdio(0);
	cin.tie(0),cout.tie(0);
	cin>>n;
	while(n--){
		cin>>tmp;
		PQ.push(tmp);
	}
	while(PQ.size()!=1){
		long long a=PQ.top(); PQ.pop();
		long long b=PQ.top(); PQ.pop();
		ans+=(a+b);
		PQ.push(a+b);
		//cout<<a<<" "<<b<<"\n";
	}
	cout<<ans;
return 0;
}
2023/8/16 09:24
加载中...