Pagini recente » Cod sursa (job #3279586) | Cod sursa (job #585654) | Borderou de evaluare (job #1463485) | Statisticile problemei Pictura | Cod sursa (job #3237323)
#include<bits/stdc++.h>
using namespace std;
ifstream F("hashuri.in");
ofstream G("hashuri.out");
#define Z 2048
int m=9973,n,i,j,k,p=Z,q;
vector<int> a[9973];
vector<int>::iterator l;
char s[Z],t[Z];
inline char A()
{
if(p==Z)
F.read(s,Z),p=0;
return s[p++];
}
int B()
{
char c;
for(c=A();!isdigit(c);c=A());
int n=0;
for(;isdigit(c);n=n*10+c-48,c=A());
return n;
}
inline void C()
{
if(q==Z)
G.write(t,Z),q=0;
}
int main()
{
for(n=B();n--;)
if(i=B(),j=B(),k=j%m,l=find(a[k].begin(),a[k].end(),j),i<2&&l==a[k].end())
a[k].push_back(j);
else if(i>2)
t[q++]=(l!=a[k].end())+48,C(),t[q++]='\n',C();
else if(i==2&&l!=a[k].end())
a[k].erase(l);
return G.write(t,q),0;
}