Pagini recente » Cod sursa (job #2255927) | Cod sursa (job #403305) | Cod sursa (job #592219) | Cod sursa (job #2141935) | Cod sursa (job #1096380)
#include <cstdio>
#include <vector>
using namespace std;
#define MOD 666013
int T;
vector <int> v[MOD];
inline vector <int> :: iterator find_value (int x)
{
int list = x % MOD;
vector <int> :: iterator it;
for (it = v[list].begin (); it != v[list].end (); ++it)
{
if (*it == x)
return it;
}
return v[list].end ();
}
inline void insert_value (int x)
{
int list = x % MOD;
if (find_value (x) == v[list].end ())
v[list].push_back (x);
}
inline void erase_value (int x)
{
int list = x % MOD;
vector <int> :: iterator it = find_value (x);
if (it != v[list].end ())
v[list].erase (it);
}
int main ()
{
freopen ("hashuri.in", "r", stdin);
freopen ("hashuri.out", "w", stdout);
scanf ("%d", &T);
while (T--)
{
int type, x;
scanf ("%d %d", &type, &x);
if (type == 1)
{
insert_value (x);
continue;
}
if (type == 2)
{
erase_value (x);
continue;
}
printf ("%d\n", find_value (x) != v[x % MOD].end ());
}
return 0;
}