Pagini recente » Cod sursa (job #2061921) | Cod sursa (job #2714268) | Cod sursa (job #550932) | Cod sursa (job #1377440) | Cod sursa (job #2058358)
#include <fstream>
#include <vector>
using namespace std;
ifstream in("hashuri.in");
ofstream out("hashuri.out");
int mod = 666013;
int n, x, op;
bool OK;
vector <int> v[666015];
void adauga (int x)
{
OK = 1;
for (int i = 0; i < v[x % 666013].size(); i++)
{
if (v[x % 666013][i] == x)
{
OK = 0;
break;
}
}
if (OK == 1)
v[x % 666013].push_back(x);
}
void sterge (int x)
{
for (int i = 0; i < v[x % 666013].size(); i++)
{
if (v[x % 666013][i] == x)
{
swap (v[x % 666013][i], v[x % 666013][v[x % 666013].size() - 1]);
v[x % 666013].pop_back();
return;
}
}
}
void afisare (int x)
{
for (int i = 0; i < v[x % 666013].size(); i++)
{
if (v[x % 666013][i] == x)
{
out << 1 << '\n';
return;
}
}
out << 0 << '\n';
}
int main()
{
in >> n;
for (int i = 1; i <= n; i++)
{
in >> op >> x;
if (op == 1)
adauga(x);
else
if (op == 2)
sterge(x);
else
afisare(x);
}
return 0;
}