求助,样例过,WA3个点
查看原帖
求助,样例过,WA3个点
544113
不慕放糖楼主2021/10/7 09:14
#include<bits/stdc++.h>
using namespace std;
using std::priority_queue;
int main(){
	priority_queue<int>q1;
	priority_queue<int>q2;
	long long n,x,ans1=0,ans2=0;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>x;
		q1.push(x*(-1));
		q2.push(x);
	}
	while(q1.size()>=2){
			int a=q1.top(); q1.pop();
			int b=q1.top(); q1.pop();
			ans1+=abs(a+b);
			q1.push((abs(a)+abs(b))*(-1));
	}
	while(q2.size()>=2){
			int a=q2.top(); q2.pop();
			int b=q2.top(); q2.pop();
			ans2+=abs(a+b);
			q2.push(abs(a)+abs(b));
	}
	cout<<ans1<<endl<<ans2;
} 
2021/10/7 09:14
加载中...