Pagini recente » Cod sursa (job #596147) | Istoria paginii runda/two | Cod sursa (job #723945) | Cod sursa (job #998924) | Cod sursa (job #2832151)
#include <bits/stdc++.h>
#define P 123457
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
int x, op, n;
vector<int>h[123505];
int Find(int x)
{
int r = x % P;
int L = h[r].size();
for(int i = 0; i < L; i++)
if(h[r][i] == x)
return 1;
return 0;
}
void Add(int x)
{
int r = x % P;
if(Find(x) == 0)
h[r].push_back(x);
}
void Erase(int x)
{
int r = x % P;
int L = h[r].size();
for(int i = 0; i < L; i++)
if(h[r][i] == x)
{
h[r][i] = h[r][L-1];
h[r].pop_back();
return;
}
}
int main()
{
fin >> n;
for(int i = 1; i <= n; i++)
{
fin >> op >> x;
if(op == 1)
Add(x);
else if(op == 2)
Erase(x);
else
fout << Find(x) << "\n";
}
return 0;
}