萌新刚学OI,TLE求助
查看原帖
萌新刚学OI,TLE求助
578628
Undead2008楼主2022/7/16 09:43
#include<bits/stdc++.h>
using namespace std;
priority_queue<int>q;
priority_queue<int,vector<int>,greater<int> >q_;
int n,a[100010];
void balance(){
	while(q.size()>q_.size()){
		int t=q.top();
		q.pop();
		q_.push(t);
	}
	while(q_.size()>q.size()){
		int t=q_.top();
		q_.pop();
		q.push(t);
	}
}
int T;
int main(){
	cin>>T;
	while(T--){n=1;
		while(!q.empty())q.pop();
		while(!q_.empty())q_.pop();
		while(1){cin>>n;
			if(n==0)
				break;
			if(n>0){
				q.push(n);
				balance();
			}else{
				cout<<q.top()<<endl;
				q.pop();
				balance();
			}
		}
	}	
}
2022/7/16 09:43
加载中...