Pagini recente » Cod sursa (job #1878514) | Cod sursa (job #882645) | Cod sursa (job #2801881) | Cod sursa (job #2193139) | Cod sursa (job #424981)
Cod sursa(job #424981)
#include <vector>
#include <fstream>
using namespace std;
ifstream in("hashuri.in");
ofstream out("hashuri.out");
vector<int> H[100020];
vector<int>::iterator it;
int n,i,j,op,val;
int hash_func(int val)
{
return val%n;
}
int main()
{
in>>n;
for(i=1; i<=n; i++)
{
in>>op>>val;
if(op == 1)
{
if(H[hash_func(val)].empty())
{
H[hash_func(val)].push_back(val);
continue;
}
it = H[hash_func(val)].begin();
while(it != H[hash_func(val)].end() && *it != val)
it++;
if(it == H[hash_func(val)].end())
H[hash_func(val)].push_back(val);
}
else if(op == 2)
{
if(H[hash_func(val)].empty())
continue;
it = H[hash_func(val)].begin();
while(it != H[hash_func(val)].end() && *it != val)
it++;
if(it != H[hash_func(val)].end())
H[hash_func(val)].erase(it);
}
else if(op == 3)
{
if(H[hash_func(val)].empty())
{
out<<0<<'\n';
continue;
}
it = H[hash_func(val)].begin();
while(it != H[hash_func(val)].end() && *it != val)
it++;
out <<(it != H[hash_func(val)].end())<<'\n';
}
}
return 0;
}