Pagini recente » Cod sursa (job #1580875) | Cod sursa (job #1560162) | Cod sursa (job #2379357) | Cod sursa (job #3129995) | Cod sursa (job #2744483)
#include <bits/stdc++.h>
using namespace std;
const int prim = 666013;
vector <int> hs[prim];
void inserare(int x)
{
int l = x % prim;
bool deja_ins = false;
for (int i = 0; i < hs[l].size() && !deja_ins; i++)
if (hs[l][i] == x)
deja_ins = true;
if (!deja_ins)
hs[l].push_back(x);
}
void stergere(int x)
{
int l = x % prim;
for (int i = 0; i < hs[l].size(); i++)
if (hs[l][i] == x)
hs[l].erase(hs[l].begin() + i), i = hs[l].size();
}
int exista(int x)
{
int l = x % prim;
for (int i = 0; i < hs[l].size(); i++)
if (hs[l][i] == x)
return 1;
return 0;
}
int main()
{
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
int n, caz;
int x;
fin>>n;
for (int i = 0; i < n; i++)
{
fin>>caz>>x;
switch(caz)
{
case 1:
{
inserare(x);
break;
}
case 2:
{
stergere(x);
break;
}
case 3:
fout<<exista(x)<<endl;
break;
}
}
fin.close();
fout.close();
}