Pagini recente » Cod sursa (job #964266) | Cod sursa (job #2118346) | Cod sursa (job #281922) | Cod sursa (job #2403423) | Cod sursa (job #990449)
Cod sursa(job #990449)
#include <cstdio>
#include <vector>
using namespace std;
int p=666013;
vector <int> h[666014];
inline void Adauga(int x)
{
int i;
i=x%p;
h[i].push_back(x);
}
inline vector <int>::iterator Cautare(int x)
{
int i;
vector <int>::iterator it;
i=x%p;
for(it=h[i].begin();it!=h[i].end();it++)
if(*it==x)
return it;
return h[i].end();
}
inline void Sterge(int x)
{
int i;
vector <int>::iterator it;
i=x%p;
it=Cautare(x);
if(it!=h[i].end())
h[i].erase(it);
}
int main()
{
int i,j,op,x,n;
vector <int>::iterator it;
freopen ("hashuri.in","r",stdin);
freopen ("hashuri.out","w",stdout);
scanf("%d", &n);
for(i=1;i<=n;i++)
{
scanf("%d%d", &op,&x);
if(op==1)
Adauga(x);
else
if(op==2)
Sterge(x);
else
{
j=x%p;
it=Cautare(x);
if(it!=h[j].end())
printf("1\n");
else
printf("0\n");
}
}
return 0;
}