Pagini recente » Cod sursa (job #1643343) | Cod sursa (job #1177803) | Cod sursa (job #1213049) | Cod sursa (job #2304760) | Cod sursa (job #1049346)
#include <fstream>
#include <vector>
#define IN "hashuri.in"
#define OUT "hashuri.out"
#define MM 50000
using namespace std;
ifstream fin(IN);
ofstream fout(OUT);
vector <int> H[MM];
int cautare(int);
void insert(int);
void stergere(int x);
void citire();
int main()
{
citire();
return 0;
}
int cautare(int x)
{
int k,i;
k=x%MM;
for(i=0; i<H[k].size(); i++)
if(H[k][i] ==x) return i;
return -1;
}
void insert(int x)
{
int k=x%MM;
if(cautare(x)==-1) H[k].push_back(x);
}
void stergere(int x)
{
int k=x%MM,poz=cautare(x),i;
if(poz!=-1)
{
H[k][poz]=H[k][H[k].size()-1];
H[k].pop_back();
}
}
void citire()
{
long n,i,a,b;
fin>>n;
for(i=1;i<=n;i++)
{
fin>>a>>b;
if(a==1) insert(b);
if(a==2) stergere(b);
if(a==3) if(cautare(b)==-1) fout<<'0'<<'\n';
else fout<<'1'<<'\n';
}
}