Pagini recente » Cod sursa (job #2114161) | Cod sursa (job #1786467) | Cod sursa (job #553526) | Cod sursa (job #2429268) | Cod sursa (job #1307817)
#include <bits/stdc++.h>
using namespace std;
#define key 666013
int op,i,t,a;
vector <int> Hash[key+13];
bool check(int a)
{
vector <int>::iterator it;
for (it=Hash[a%key].begin();it!=Hash[a%key].end();++it)
if (*it==a) return 1;
return 0;
}
void add_Hash(int a)
{
if (check(a)) return;
Hash[a%key].push_back(a);
}
void erase_Hash(int a)
{
for (int i=0;i<Hash[a%key].size();++i)
if (Hash[a%key][i]==a)
{
swap(Hash[a%key][i],Hash[a%key][Hash[a%key].size()-1]);
Hash[a%key].pop_back();
return;
}
}
int main(void)
{
ifstream in("hashuri.in");
ofstream out("hashuri.out");
in>>t;
while(t--)
{
in>>op>>a;
if (op==1) add_Hash(a);
if (op==2) erase_Hash(a);
if (op==3)
{
if (check(a)) out<<"1\n";
else out<<"0\n";
}
}
return 0;
}