Pagini recente » Cod sursa (job #1214208) | Cod sursa (job #3174574) | Cod sursa (job #2490950) | Cod sursa (job #236504) | Cod sursa (job #2777025)
#include <bits/stdc++.h>
#define MOD 666013
using namespace std;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
int n, ops;
vector <int> G[MOD];
vector <int>::iterator find_value(int val)
{
int hashCode = val % MOD;
for(vector <int>::iterator it = G[hashCode].begin(); it < G[hashCode].end(); it++)
if(*it == val)
return it;
return G[hashCode].end();
}
void insert_value(int val)
{
int hashCode = val % MOD;
if(find_value(val) == G[hashCode].end())
G[hashCode].push_back(val);
}
void erase_value(int val)
{
int hashCode = val % MOD;
vector <int>::iterator it = find_value(val);
if(it != G[hashCode].end())
G[hashCode].erase(it);
}
int main()
{
f >> n;
for(int i = 1; i <= n; i++)
{
int x;
f >> ops >> x;
if(ops == 1)
insert_value(x);
if(ops == 2)
erase_value(x);
if(ops == 3)
{
int hashCode = x % MOD;
g << (find_value(x) != G[hashCode].end()) << "\n";
}
}
return 0;
}