Pagini recente » Cod sursa (job #2218439) | Cod sursa (job #1369661) | Cod sursa (job #1901831) | Cod sursa (job #897131) | Cod sursa (job #2059149)
#include <fstream>
#include <vector>
#define nm 666013
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
vector <int> lista[nm];
vector <int>::iterator it;
vector <int>::iterator gaseste(int x)
{
int m=x%nm;
for(it=lista[m].begin();it!=lista[m].end();it++)
{
if(*it==x)
return it;
}
return lista[m].end();
}
void adauga(int x)
{
int m=x%nm;
if(gaseste(x)==lista[m].end())
lista[m].push_back(x);
}
void sterge(int x)
{
int m=x%nm;
vector <int>::iterator ot=gaseste(x);
if(it!=lista[m].end())
lista[m].erase(ot);
}
int main()
{
int n,c,x;
fin>>n;
for(int i=1;i<=n;i++)
{
fin>>c>>x;
if(c==1)
{
adauga(x);
}
else
{
if(c==2)
{
sterge(x);
}
else
{
int md=x%nm;
if(gaseste(x)!=lista[md].end())
{
fout<<"1\n";
}
else
fout<<"0\n";
}
}
}
return 0;
}