Pagini recente » Cod sursa (job #1797597) | Cod sursa (job #1748805) | Cod sursa (job #1662889) | Cod sursa (job #473214) | Cod sursa (job #1051385)
#include <iostream>
#include <fstream>
#include<vector>
#define nr_zone 666013
using namespace std;
vector <int> hash[nr_zone];
int search (vector <int> hash[nr_zone], int val)
{
int zona = val % nr_zone;
for (int i=0; i<hash[zona].size(); i++)
if (hash[zona][i] == val)
return i;
return -1;
}
void adaug ( vector <int> hash[nr_zone], int val)
{
int zona = val % nr_zone;
if (search(hash, val) != -1)
return;
else
hash[zona].push_back(val);
return;
}
void stergere (vector <int> hash[nr_zone], int val)
{
int poz = search(hash, val);
if (poz != -1)
{
int zona = val % nr_zone;
hash[zona][poz] = hash[zona].back();
hash[zona].pop_back();
}
}
int main()
{
int n, x, y;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
f >> n;
for (int i=0; i<n; i++)
{
f >> x >> y;
if (x == 1) adaug(hash, y);
else
if (x == 2) stergere(hash, y);
else
{
if (search(hash, y) == -1) g << 0 << "\n";
else g << 1 << "\n";
}
}
return 0;
}