Pagini recente » Cod sursa (job #1830142) | Cod sursa (job #2815574) | Cod sursa (job #2357093) | Cod sursa (job #477911) | Cod sursa (job #1279530)
#include <iostream>
#include <fstream>
using namespace std;
#define mod1 666013
#define mod2 666023
int h1[mod1], h2[mod2], n;
int cauta(int val)
{
if (h1[val%mod1] && h2[val%mod2]) return 1;
return 0;
}
void adauga(int val)
{
if (!cauta(val)) {h1[val%mod1]++; h2[val%mod2]++;}
}
void sterge(int val)
{
if (cauta(val)) {h1[val%mod1]--; h2[val%mod2]--;}
}
int main()
{
ifstream f("hashuri.in");
ofstream g("hashuri.out");
int i, op, x;
f>>n;
for (i=0;i<n;i++)
{
f>>op>>x;
if (op==1) adauga(x);
if (op==2) sterge(x);
if (op==3) g<<cauta(x)<<'\n';
}
}