Pagini recente » Cod sursa (job #981130) | Cod sursa (job #3201992) | Cod sursa (job #2451213) | Cod sursa (job #2716470) | Cod sursa (job #1047899)
#include <vector>
#include<fstream>
#define max 666013
using namespace std;
vector<int> hash[max];
int find(int val)
{
int zona=val/max;
for(int it=0;it<hash[zona].size();it++)
if(hash[zona][it]==val)
return it;
return -1;
}
void delet(int val)
{
int poz=find(val);
if(poz!=-1)
{
int zona=val/max;
hash[zona][poz]=hash[zona].back();
hash[zona].pop_back();
}
}
void inserare(int val)
{
int poz=find(val);
if(poz==-1)
{
int zona=val/max;
hash[zona].push_back(val);
}
}
int main()
{
ifstream f("hashuri.in");
ofstream g("hashuri.out");
int n,i,x,y;
f>>n;
for(i=1;i<=n;i++)
{
f>>x>>y;
if(x==1)
inserare(y);
else
if(x==2)
delet(y);
else
{
int s=find(y);
if(s==-1)
g<<0<<endl;
else
g<<1<<endl;
}
}
return 0;
}