Pagini recente » Cod sursa (job #2095686) | Cod sursa (job #2302738) | Cod sursa (job #134505) | Cod sursa (job #972439) | Cod sursa (job #2199850)
#pragma GCC optimize("O3")
#pragma comment(linker, "/stack:200000000")
#pragma GCC optimize("Ofast")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
#include<bits/stdc++.h>
#define ll long long
#define sz size
#define pb push_back
#define er erase
#define in insert
#define fr first
#define sc second
#define mp make_pair
#define pi pair
#define _ ios_base::sync_with_stdio(false);cin.tie(0);cerr.tie(0);cout.tie(0);
#define rc(s) return cout<<s,0
using namespace std;
const int mnod=6e4+3;
vector<int>::iterator it;
int n,x,t,mn;
vector<int>sir[mnod];
vector<int>::iterator findnum(int x,int y){
it=sir[x].begin();
while(it!=sir[x].end()){
if(*it==y) return it;
else it++;
}
return sir[x].end();
}
int main(){
freopen("hashuri.in", "r", stdin);
freopen("hashuri.out", "w", stdout);
cin >> n;
for(int i=1;i<=n;i++){
cin >> x >> t;
mn=t%mnod;
if(x==1){
if(findnum(mn,t)==sir[mn].end()) sir[mn].push_back(t);
continue;
}
if(x==2){
if(findnum(mn,t)!=sir[mn].end()) sir[mn].erase(it);
continue;
}
if(x==3){
if(findnum(mn,t)!=sir[mn].end()) cout<<1<<endl;
else cout<<0<<endl;
}
}
}