Pagini recente » Cod sursa (job #3183353) | Cod sursa (job #1363351) | Cod sursa (job #1695189) | Cod sursa (job #1247200) | Cod sursa (job #370849)
Cod sursa(job #370849)
#include <stdio.h>
#define mod 666013
struct lista
{
int val;
lista *urm;
};
lista *g[mod],*p;
int i,op,n,x,a[mod];
void inserare(int x)
{
int i=x%mod;
p=new lista;
p->val=x;
p->urm=g[i];
g[i]=p;
}
void stergere(int x)
{
int i=x%mod,ok=0;
lista *q;
p=g[i];
while(p)
{
if(p->val==x) { q=p; p=p->urm; delete q; ok=1;}
if(ok) break;
else p=p->urm;
}
}
int cauta(int x)
{
int i=x%mod;
p=g[i];
while(p)
{
if(p->val==x) return 1;
p=p->urm;
}
return 0;
}
int main()
{
freopen("hashuri.in","r",stdin);
freopen("hashuri.out","w",stdout);
scanf("%d",&n);
for(; n>0; n--)
{
scanf("%d%d",&op,&x);
if(op==1) inserare(x);
if(op==2) stergere(x);
if(op==3) printf("%d\n",cauta(x));
}
return 0;
}