Pagini recente » preONI 2008 - Clasament general, Clasele 11-12 | Cod sursa (job #2687837) | Cod sursa (job #3252000) | Cod sursa (job #1867756) | Cod sursa (job #973498)
Cod sursa(job #973498)
#include <iostream>
#include <fstream>
using namespace std;
struct nod
{
int inf;
nod *urm;
} *p,*q;
struct vnod
{
nod *urm;
} v[500000];
int i,n,t,nr,c,r,b;
int main(void)
{
FILE * f;
f=fopen("hashuri.in","r");
ofstream g("hashuri.out");
fscanf(f,"%d",&n);
for (i=1;i<=n;i++)
{
fscanf(f,"%d%d",&t,&nr);
r=nr%500000;
c=nr/500000;
if (t==1)
{
p=new(nod);
p->urm=v[r].urm;
p->inf=c;
v[r].urm=p;
}
if (t==2)
{
p=v[r].urm;
if (p!=NULL)
if (p->inf==c)
{
v[r].urm=p->urm;
delete(p);
p=NULL;
}
while (p!=NULL)
{
if (p->urm->inf==c)
{
q=p->urm;
p->urm=q->urm;
delete(q);
p=NULL;
}
else
p=p->urm;
}
}
if (t==3)
{
p=v[r].urm;
b=0;
while (p!=NULL)
{
if (p->inf==c)
{
b=1;
p=NULL;
}
else
p=p->urm;
}
g<<b<<'\n';
}
}
g.close();
return 0;
}