Pagini recente » Cod sursa (job #788269) | Cod sursa (job #1259030) | Cod sursa (job #1833580) | Cod sursa (job #1608995) | Cod sursa (job #2774799)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
const int mask = (1 << 14) - 1;
vector<vector<int>>h(mask);
int Q;
void push(int val) {
int h_val = val & mask;
h[h_val].push_back(val);
}
void pop(int val) {
int h_val = val & mask;
auto it = find(h[h_val].begin(), h[h_val].end(), val);
if(it != h[h_val].end()) {
h[h_val].erase(it);
}
}
bool check(int val) {
int h_val = val & mask;
auto it = find(h[h_val].begin(), h[h_val].end(), val);
return (it != h[h_val].end());
}
int main() {
for(fin >> Q; Q--; ) {
int op, x;
fin >> op >> x;
if(op == 1) {
push(x);
} else if(op == 2) {
pop(x);
} else {
fout << check(x) << '\n';
}
}
return 0;
}