Pagini recente » Cod sursa (job #798190) | Cod sursa (job #2665654) | Cod sursa (job #3236177) | Cod sursa (job #3160674) | Cod sursa (job #673252)
Cod sursa(job #673252)
#include <cstdio>
#include <cassert>
#include <vector>
#define Mod 666013
#define InFile "hashuri.in"
#define OutFile "hashuri.out"
#define pb push_back
using namespace std;
int n;
vector <int> H[Mod];
int search (int x);
void insert (int x);
void erase (int x);
int main()
{
int i, op, x;
assert (freopen (InFile, "r", stdin));
assert (freopen (OutFile, "w", stdout));
scanf ("%d\n", &n);
for (i=1; i<=n; i++)
{
scanf ("%d %d\n", &op, &x);
if (op==1)
insert (x);
if (op==2)
erase (x);
if (op==3)
if (search (x)!=-1)
printf ("1\n");
else
printf ("0\n");
}
return 0;
}
int search (int x)
{
int i, ch=x%Mod, lg=H[ch].size();
for (i=0; i<lg; i++)
if (H[ch][i]==x)
return i;
return -1;
}
void insert (int x)
{
int ch=x%Mod, pz=search (x);
if (pz==-1)
H[ch].pb (x);
}
void erase (int x)
{
int ch=x%Mod, pz=search (x);
if (pz!=-1)
H[ch].erase (H[ch].begin()+pz);
}