Pagini recente » Cod sursa (job #233401) | Cod sursa (job #949478) | Cod sursa (job #97437) | Cod sursa (job #2176241) | Cod sursa (job #2633920)
#include <bits/stdc++.h>
using namespace std;
ifstream in("hashuri.in");
ofstream out("hashuri.out");
const int MOD = 1e6 + 33;
int T, p, x;
vector<int> G[MOD];
vector<int>::iterator i;
vector<int>::iterator cauta(int x)
{
int val = x % MOD;
for(i = G[val].begin(); i != G[val].end(); ++i)
if(*i == x)
return i;
return G[val].end();
}
void insereaza(int x)
{
int val = x % MOD;
for(int i : G[val])
if(i == x)
return;
G[val].push_back(x);
}
void sterge(int x)
{
int val = x % MOD;
auto i = cauta(x);
if(i != G[val].end())
G[val].erase(i);
}
int main()
{
in >> T;
while(T--)
{
in >> p >> x;
if(p == 1)
insereaza(x);
else if(p == 2)
sterge(x);
else
out << (cauta(x) == G[x % MOD].end() ? 0 : 1) << '\n';
}
return 0;
}