Pagini recente » Cod sursa (job #859313) | Cod sursa (job #1568586) | Cod sursa (job #3144871) | Cod sursa (job #375582) | Cod sursa (job #2187374)
#include <cstdio>
#include <vector>
using namespace std;
const int MOD = 666013;
vector <int> v[MOD];
vector <int> :: iterator find_hash(int x)
{
int k = x%MOD;
vector <int> :: iterator it;
for(it = v[k].begin(); it!=v[k].end(); it++)
if((*it) == x) return it;
return v[k].end();
}
void insert_hash(int x)
{
int k = x%MOD;
if(find_hash(x) == v[k].end())
v[x%MOD].push_back(x);
}
void erase_hash(int x)
{
int k = x%MOD;
vector <int> :: iterator it = find_hash(x);
if(it != v[k].end())
v[k].erase(it);
}
int main()
{
freopen("hashuri.in", "r", stdin);
freopen("hashuri.out", "w", stdout);
int n;
scanf("%d", &n);
int nr = 0;
for(int i=0; i<n; i++)
{
int t, x;
scanf("%d%d", &t, &x);
if(t == 1) insert_hash(x);
else if(t == 2) erase_hash(x);
else if(t == 3) printf("%d\n", find_hash(x) != v[x%MOD].end());
}
return 0;
}