Pagini recente » Cod sursa (job #2161320) | Cod sursa (job #2828615) | Cod sursa (job #1397277) | Cod sursa (job #2724916) | Cod sursa (job #2483073)
#include <iostream>
#include <fstream>
#include <list>
#include <algorithm>
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
#define mod 666013
list<int> H[mod];
void add(int x)
{
int address = x % mod;
if (find(H[address].begin(), H[address].end(), x) == H[address].end())
{
H[address].push_back(x);
}
}
void remove(int x)
{
int address = x % mod;
H[address].remove(x);
}
int has(int x)
{
int address = x % mod;
list<int>::iterator it = find(H[address].begin(), H[address].end(), x);
if (it != H[address].end()) return 1;
return 0;
}
int main()
{
int n, o, x;
fin >> n;
for (int i = 1; i <= n; ++i)
{
fin >> o >> x;
switch (o)
{
case 1:
add(x);
break;
case 2:
remove(x);
break;
case 3:
fout << has(x) << "\n";
}
}
return 0;
}