Pagini recente » Cod sursa (job #1403883) | Cod sursa (job #377669) | Cod sursa (job #2361807) | Cod sursa (job #2241045) | Cod sursa (job #1045796)
#include <iostream>
#include<fstream>
#include<vector>
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
#define prime 666013
vector <int> H[prime];
int Cauta(vector <int>H[prime], int x)
{
int unde=x%prime;
for(int i=0;i<H[unde].size();i++)
if(H[unde][i]==x)
return 1;
return 0;
}
void Insert(vector <int> H[prime],int x)
{
if(Cauta(H,x))
return;
int unde=x%prime;
H[unde].push_back(x);
}
int Sterge(vector <int>H[prime], int x)
{
int unde=x%prime;
for(int i=0;i<H[unde].size();i++)
if(H[unde][i]==x)
{
H[unde][i]=H[unde].back();
H[unde].pop_back();
return 1;
}
return 0;
}
int main()
{
int el,op,N;
cin>>N;
while(N>0)
{
fin>>op;
fin>>el;
if(op==1)
Insert(H,el);
else
if(op==2)
Sterge(H,el);
else
if(op==3)
fout<<Cauta(H,el)<<endl;
N--;
}
return 0;
}