Pagini recente » Cod sursa (job #2543032) | Cod sursa (job #800379) | Cod sursa (job #2867547) | Cod sursa (job #3143458)
#include <fstream>
#include <vector>
using namespace std;
ifstream cin("hashuri.in");
ofstream cout("hashuri.out");
const int MOD = 666013;
vector <int> hashing[MOD];
int query, operatie, numar;
auto find_value(int x) {
int array = x % MOD;
for (auto iterator = hashing[array].begin(); iterator != hashing[array].end(); ++iterator) {
if (*iterator == x) {
return iterator;
}
}
return hashing[array].end();
}
void insert_value(int x) {
int array = x % MOD;
if (find_value(x) == hashing[array].end()) {
hashing[array].push_back(x);
}
}
void erase_value(int x) {
int array = x % MOD;
auto iterator = find_value(x);
if (iterator != hashing[array].end()) {
hashing[array].erase(iterator);
}
}
int main() {
cin >> query;
while (query--) {
cin >> operatie >> numar;
if (operatie == 1) {
insert_value(numar);
continue;
}
if (operatie == 2) {
erase_value(numar);
continue;
}
cout << (find_value(numar) != hashing[numar % MOD].end()) << '\n';
}
return 0;
}