Pagini recente » Cod sursa (job #294570) | Cod sursa (job #1710761) | Cod sursa (job #317680) | Cod sursa (job #1148853) | Cod sursa (job #1018885)
using namespace std;
#include<fstream>
#include<vector>
#define m 666013
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
vector <int> Hash[m];
int n;
vector<int>::iterator find(int x)
{
int val=x%m;
for(unsigned int i=0;i<Hash[val].size();i++)
if(x==Hash[val][i])
return Hash[val].begin()+i;
return Hash[val].end();
}
void add(int x)
{int val=x%m;
if(find(x)==Hash[val].end())
Hash[val].push_back(x);
}
void dell(int x)
{int val=x%m;
vector<int>::iterator it=find(x);
if(it!=Hash[val].end())
Hash[val].erase(it);
}
void solve()
{
fin>>n;
while(n--)
{int x,op;
fin>>op>>x;
if(op==1)add(x);
if(op==2)dell(x);
if(op==3)
fout<<(find(x)!=Hash[x%m].end())<<endl;
}
}
int main()
{
solve();
return 0;
}