Pagini recente » Cod sursa (job #2855164) | Cod sursa (job #2616020) | Cod sursa (job #2692924) | Cod sursa (job #2815240) | Cod sursa (job #2205475)
#include <iostream>
#include <vector>
#include <fstream>
#define mod 666013
using namespace std;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
vector <int> V[mod];
int operations;
int H(int x)
{
return x % mod;
}
vector<int>::iterator findVal(int x)
{
vector <int>::iterator it;
int ind = H(x);
for (it = V[ind].begin(); it != V[ind].end(); ++it)
if (*it == x)
return it;
return V[ind].end();
}
void add(int key)
{
int ind = H(key);
if (findVal(key) == V[ind].end())
V[ind].push_back(key);
}
void del(int key)
{
int ind = H(key);
vector<int>::iterator it = findVal(key);
if (it != V[ind].end())
V[ind].erase(it);
}
int main()
{
f>>operations;
int op, key;
for (int i = 0; i < operations; ++i)
{
f>>op>>key;
if (op == 1)
{
add(key);
continue;
}
if (op == 2)
{
del(key);
continue;
}
g<<(findVal(key) != V[key % mod].end())<<endl;
}
return 0;
}