Pagini recente » Cod sursa (job #2248298) | Cod sursa (job #2423119) | Cod sursa (job #140457) | Cod sursa (job #3184186) | Cod sursa (job #3232035)
#include <iostream>
#include <fstream>
#define MOD 666013
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
struct nod
{
int info;
nod *urm;
}*H[MOD];
void sterge(int x)
{
int ind = x % MOD;
nod *p, *u;
p=u=H[ind];
if(H[ind])
{
if(H[ind]->info==x) H[ind]=H[ind]->urm;
else
{
while(p && p->info != x)
{
u=p;
p=p->urm;
}
if(p) u->urm=p->urm;
}
}
}
void scrie(int x)
{
int ind=x%MOD;
nod *p = H[ind];
while(p)
{
if(p->info==x){
fout<<1 << '\n';
return;
}
}
fout << 0 << '\n';
}
int main()
{
int op,ind;
long long n,x;
fin>>n;
for(int i=1;i<=n;i++)
{
fin>>op>>x;
ind=x%MOD;
if(op==1)
{
nod *p=new nod;
p->info=x;
p->urm=H[ind];
H[ind]=p;
}
else if(op==2) sterge(x);
else scrie(x);
}
return 0;
}