玄3关,求助!
查看原帖
玄3关,求助!
1252442
lucy2012楼主2024/4/30 12:57

Q1:0分求调

Q2:文中三处注释

解答一个就给关,希望都能解答QwQ

#include<bits/stdc++.h>
using namespace std;
int n,num,len;
set<int> s;
int main(){
	cin>>n;
	while(n--){
		cin>>num>>len;
		if(num==1){
			if(s.find(len)!=s.end())
			    cout<<"Already Exist";
			else
			    s.insert(len);
		}else if(s.empty())
		    cout<<"Empty";
		else{
			set<int> ::iterator num1=s.lower_bound(len),num2=num1;
			//为什么不用::iterator会编译错误? 
			if(num2!=s.begin())
			    num2--; 
			if(num1!=s.end()&&len-(*num2>*num1)-len)
			//这里有点不理解 ,len-(*num2>*num1)-len是什么意思? 
			    num1=num2;//为什么这么做? 
			cout<<(*num2)<<endl;
			s.erase(num2);
		}
	} 
	return 0;
}
2024/4/30 12:57
加载中...