Pagini recente » Cod sursa (job #1784085) | Cod sursa (job #493084) | Cod sursa (job #381475) | Cod sursa (job #2568112) | Cod sursa (job #265561)
Cod sursa(job #265561)
#include <fstream>
#include <set>
#include <algorithm>
using namespace std;
set<int> Hash[60000];
const int M = 59997;
inline int get_key(int X) {return X % M;}
inline void addHash(int X) {Hash[get_key(X)].insert(X);}
inline void eraseHash(int X) {
int key = get_key(X);
if (Hash[key].find(X) == Hash[key].end()) return;
Hash[key].erase(Hash[key].find(X));
}
inline int isHash(int X) {
int key = get_key(X);
if (Hash[key].find(X) != Hash[key].end()) return 1;
return 0;
}
int main() {
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
int n;
fin >> n;
while (n--) {
int op, X;
fin >> op >> X;
if (op == 1) addHash(X);
if (op == 2) eraseHash(X);
if (op == 3) fout << isHash(X) << '\n';
}
return 0;
}