Pagini recente » Cod sursa (job #1378011) | Cod sursa (job #3195357) | Cod sursa (job #1516904) | Cod sursa (job #2182310) | Cod sursa (job #2614708)
#include <cstdio>
#include <vector>
#include <fstream>
using namespace std;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
#define mod 666663
vector<int> H[mod];
int cauta( int nod){
int k=nod%mod;
vector<int> :: iterator it;
for (it=H[k].begin();it!=H[k].end();++it)
if (*it==nod)
return 1;
return 0;
}
void adauga( int nod){
int k=nod%mod;
H[k].push_back(nod);
}
void sterge( int nod){
int k=nod%mod;
vector<int> :: iterator it;
for (it=H[k].begin();it!=H[k].end();++it)
if (*it==nod){
H[k].erase(it);
break;
}
}
int main()
{
int n;
f >> n;
for (int i = 0; i < n; ++i) {
int op, x;
f >> op >> x;
switch (op)
{
case 1:
if (!cauta(x)) adauga(x);
break;
case 2:
if (cauta(x)) sterge(x);
break;
case 3:
g << cauta(x) << '\n';
}
}
return 0;
}