Cod sursa(job #629321)
# include <fstream>
# include <vector>
# define MODULO 666013
using namespace std;
int n,i,op,x;
vector <int> ha[MODULO];
int gaseste (int x)
{
int a=x%MODULO;
int i;
for (i=0;i<ha[a].size();i++)
{
if (ha[a][i]==x)
return 1;
}
return 0;
}
void adauga (int x)
{
int a=x%MODULO;
int i;
for (i=0;i<ha[a].size();i++)
{
if (ha[a][i]==x)
return;
}
ha[a].push_back(x);
}
void sterge (int x)
{
int a=x%MODULO;
int i;
for (i=0;i<ha[a].size();i++)
{
if (ha[a][i]==x)
{
ha[a][i]=ha[a][ha[a].size()-1];
ha[a].pop_back();
return;
}
}
}
int main ()
{
ifstream fin ("hashuri.in");
ofstream fout ("hashuri.out");
fin>>n;
for (i=1;i<=n;i++)
{
fin>>op>>x;
if (op==1)
{
adauga(x);
}
else if (op==2)
sterge(x);
else fout<<gaseste(x)<<'\n';
}
return 0;
}