0pts
查看原帖
0pts
1012241
Dcchen楼主2024/4/6 21:54
#include<iostream>
#include<set>
using namespace std;
int n,pos,len;
set<int> s;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>pos>>len;
		if(pos==1){
			int len_last=s.size();
			s.insert(len);
			int len_now=s.size();
			if(len_last==len_now) cout<<"Already Exist\n";
		}
		else{
			if(s.empty()){
				cout<<"Empty\n";
				continue;
			}
			auto it=s.lower_bound(len);
			auto itt=(--it);
			it++;
			if(len-*(itt)<=*(it)-len){
				cout<<*itt<<endl;
				s.erase(*itt);
			}
			else{
				cout<<*it<<endl;
				s.erase(*it);
			}
		}
	}
}
2024/4/6 21:54
加载中...