Cod sursa(job #1191038)
Utilizator | Data | 26 mai 2014 11:46:38 | |
---|---|---|---|
Problema | Hashuri | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 1.72 kb |
#include <fstream>
using namespace std;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
struct point
{
int inf;
point *leg;
};
point *prim,*p,*ult,*r,*P,*R,*u;
int n,x,y,j;
int main()
{
f>>n;
for(int i=1; i<=n; i++)
{
f>>x;
if(x==1 && i==1)
{
prim=new point;
prim->leg=NULL;
f>>prim->inf;
ult=prim;
}
else if(x==1)
{
p=new point;
f>>p->inf;
p->leg=NULL;
ult->leg=p;
ult=p;
}
else if(x==2)
{
f>>y;
P=new point;
R=new point;
int j=0;
P=prim;
R=P->leg;
if (j!=0)
{
P=P->leg;
R=R->leg;
}
if (R->inf==y)
{
P->leg=R->leg;
delete R;
break;
}
j++;
while (R->leg!=NULL)
{
if (j!=0)
{
P=P->leg;
R=R->leg;
}
if (R->inf==y)
{
P->leg=R->leg;
delete R;
break;
}
j++;
}
}
else if(x==3)
{
f>>y;
u=NULL;
p=prim;
while(p!=NULL && p->inf!=y)
{
u=p;
p=p->leg;
}
if(p!=NULL)
g<<'1'<<endl;
else g<<'0'<<endl;
}
}
return 0;
}