Pagini recente » Cod sursa (job #1315673) | Cod sursa (job #3224213) | Cod sursa (job #2643026) | Cod sursa (job #1712679) | Cod sursa (job #1496408)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
int v1[1000001];
int v2[1000001];
int j1,j2;
int n;
int Existenta1(int par)
{
int i=1;
while(v1[i]!=par && i<=j1)
i++;
if(i>j1)
return 0;
else
return 1;
}
int Existenta2(int par)
{
int i=1;
while(v2[i]!=par && i<=j2)
i++;
if(i>j2)
return 0;
else
return 1;
}
void Adauga(int par)
{
int t;
if(par%2==0)
{
t=Existenta1(par);
if(t==0)
{
j1++;
v1[j1]=par;
}
}
else
{
t=Existenta2(par);
if(t==0)
{
j2++;
v2[j2]=par;
}
}
}
void Sterge(int par)
{
int i=1;
if(par%2==0)
{
while(v1[i]!=par && i<=j1)
i++;
if(i<=j1)
{
v1[i]=v1[j1];
j1--;
}
}
else
{
while(v2[i]!=par && i<=j2)
i++;
if(i<=j2)
{
v2[i]=v2[j2];
j2--;
}
}
}
int main()
{
f>>n;
int i;
j1=0;j2=0;
int par;
int ind;
for(i=1;i<=n;i++)
{
f>>ind>>par;
if(ind==1)
Adauga(par);
else
if(ind==2)
Sterge(par);
else
{
if(par%2==0)
g<<Existenta1(par)<<'\n';
else
g<<Existenta2(par)<<'\n';
}
}
return 0;
}