Pagini recente » Cod sursa (job #719360) | Cod sursa (job #1109135) | Cod sursa (job #1634903) | Cod sursa (job #2089193) | Cod sursa (job #629351)
Cod sursa(job #629351)
#include<fstream>
#include<vector>
using namespace std;
#define hash 666013
int n, x;
vector <int> vhash[hash];
inline void add (int x)
{
int y, i, l;
y=x%hash;
l=vhash[y].size();
for (i=0; i<l; i++)
if (vhash[y][i]==x) return;
vhash[y].push_back(x);
}
inline void remove (int x)
{
int y, i, l;
y=x%hash;
l=vhash[y].size();
for (i=0; i<l; i++)
if (vhash[y][i] == x)
{
vhash[y][i] = vhash[y][l-1];
vhash[y].pop_back();
return;
}
}
int irina_ma_enerveaza (int x)
{
int y, i, l;
y=x%hash;
l=vhash[y].size();
for (i=0; i<l; i++)
if (vhash[y][i]==x) return 1;
return 0;
}
int main()
{
int op, el, i;
ifstream f("hashuri.in");
ofstream h("hashuri.out");
f>>n;
for (i=1; i<=n; i++)
{
f>>op;
f>>el;
if (op==1)
add(el);
if (op==2)
remove(el);
if (op==3)
h<<irina_ma_enerveaza(el)<<'\n';
}
f.close();
h.close();
return 0;
}