Pagini recente » Cod sursa (job #845228) | Cod sursa (job #714160) | Cod sursa (job #390788) | Cod sursa (job #603827) | Cod sursa (job #883081)
Cod sursa(job #883081)
#include <fstream>
#include <vector>
using namespace std;
ifstream in("hashuri.in");
ofstream out("hashuri.out");
const int P = 666013;
vector<int> H[P];
vector<int>::iterator find(const int &x)
{
int list = x % P;
vector<int>::iterator it;
for (it = H[list].begin(); it != H[list].end(); ++it)
if (*it == x) return it;
return H[list].end();
}
int main()
{
int N, c, x, list; in >> N;
for (int i = 0; i < N; i++)
{
in >> c >> x;
list = x % P;
switch(c)
{
case 1: {
if ( find(x) == H[list].end() )
H[list].push_back(x);
} break;
case 2: {
vector<int>::iterator it;
it = find(x);
if ( it != H[list].end() ) H[list].erase(it);
} break;
case 3: {
if ( find(x) != H[list].end() ) out << 1 << '\n';
else out << 0 << '\n';
} break;
}
}
return 0;
}