Pagini recente » Cod sursa (job #3235954) | Cod sursa (job #2411391) | Cod sursa (job #733674) | Cod sursa (job #881096) | Cod sursa (job #2623179)
#include <iostream>
#include <fstream>
#include <algorithm>
#include<bits/stdc++.h>
#include<vector>
using namespace std;
#define nr 667157
ifstream in("hashuri.in");
ofstream out("hashuri.out");
long n;
int op,x;
vector<int> hashul[nr];
inline vector<int>::iterator cautare(int x,int val)
{
vector<int>::iterator i;
for(i=hashul[val].begin(); i!=hashul[val].end(); ++i)
if(*i==x)
return i;
return hashul[val].end();
}
inline void inserare(int x,int val)
{
if(cautare(x,val)==hashul[val].end())
hashul[val].push_back(x);
}
inline void stergere(int x,int val)
{
vector<int>::iterator i=cautare(x,val);
if(i!=hashul[val].end())
hashul[val].erase(i);
}
int main()
{
in>>n;
int l=0;
while(n)
{
in>>op>>x;
int val=x%nr;
if(op==1)
inserare(x,val);
if(op==2)
stergere(x,val);
if(op==3)
{
bool ok=1;
if(cautare(x,val)!=hashul[val].end())
{
out<<1<<'\n';
ok=0;
}
if(ok==1)
{
out<<0<<'\n';
}
}
n--;
}
return 0;
}