Pagini recente » Cod sursa (job #3142583) | Cod sursa (job #2500922) | Cod sursa (job #934894) | Cod sursa (job #2193070) | Cod sursa (job #2763066)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream in ("hashuri.in");
ofstream out ("hashuri.out");
const int P=370003;
vector <int> h[P+2];
int n,op,x;
void adauga(int val)
{
int r=val%P;
h[r].push_back(val);
}
int cauta(int val)
{
int r=val%P,lg=h[r].size();
for(int i=0;i<lg;i++)
{
if(h[r][i]==val)
return i;
}
return -1;
}
void sterge(int val)
{
int r=val%P,lg=h[r].size();
int i=cauta(val);
if(i!=-1)
{
swap(h[r][i],h[r][lg-1]);
h[r].pop_back();
}
}
void citeste()
{
in>>n;
for(int i=1;i<=n;i++)
{
in>>op>>x;
if(op==1)
adauga(x);
if(op==2)
sterge(x);
if(op==3)
out<<(cauta(x)==-1 ? 0 : 1)<<'\n';
}
}
int main()
{
citeste();
return 0;
}