Pagini recente » Cod sursa (job #1749293) | Cod sursa (job #2066769) | Cod sursa (job #274090) | Cod sursa (job #1860428) | Cod sursa (job #1279461)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
#define mod 666013
vector<int> h[mod];
int n;
vector<int>::iterator cauta(int val)
{
int aux=val%mod;
vector<int>::iterator it;
for (it=h[aux].begin(); it!=h[aux].end(); it++)
if (*it==val) return it;
return h[aux].end();
}
void adauga(int val)
{
if (cauta(val)==h[val%mod].end()) h[val%mod].push_back(val);
}
void sterge(int val)
{
vector<int>::iterator it;
it=cauta(val);
if (it!=h[val%mod].end())
h[val%mod].erase(it);
}
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)
if (cauta(x)!=h[x%mod].end()) g<<"1\n";
else g<<"0\n";
}
}