Pagini recente » Cod sursa (job #139302) | Cod sursa (job #1881789) | Cod sursa (job #524385) | Cod sursa (job #523829) | Cod sursa (job #306577)
Cod sursa(job #306577)
#include<fstream.h>
struct nod
{int inf;
nod *adr;}*h[1000000];
void ad(nod *&l,int x)
{nod *p=new nod;p->inf=x;
p->adr=l;l=p;}
void del(nod *&l,int x)
{if(l)
{nod *p=l;
if(p->inf==x)
{l=l->adr;
delete p;}
else
{while(p->adr&&p->adr->inf!=x)p=p->adr;
if(p->adr)
{nod* q=p->adr;
p->adr=q->adr;
delete q;}
}}}
short srch(nod *l,int x)
{while(l)
{if(l->inf==x)return 1;
l=l->adr;}
return 0;}
int main()
{ifstream f("hashuri.in");
ofstream g("hashuri.out");
int N,x,P;
short op;
f>>N;P=N;
while(N--)
{f>>op>>x;
switch(op)
{case 1:ad(h[x%P],x);break;
case 2:del(h[x%P],x);break;
default:g<<srch(h[x%P],x)<<'\n';}
}
return 0;
}