Pagini recente » Cod sursa (job #1334951) | Cod sursa (job #2620258) | Cod sursa (job #2136735) | Cod sursa (job #1867217) | Cod sursa (job #1925866)
#include<stdio.h>
#include<vector>
#define MOD 666013
using namespace std;
vector <int> v[MOD];
vector<int>::iterator findx (int x){
int i;
int zona;
zona = x % MOD;
for (vector<int>::iterator it = v[zona].begin();it != v[zona].end();it++)
if (*it == x)
return it;
return v[zona].end();
}
void sterge (int x){
int zona;
zona = x % MOD;
vector<int>::iterator it = findx(x);
if (it != v[zona].end())
v[zona].erase(it);
}
void adauga (int x){
int zona;
zona = x % MOD;
if (findx (x) == v[zona].end())
v[zona].push_back (x);
}
int main (){
FILE *in,*out;
in = fopen ("hashuri.in","r");
out = fopen ("hashuri.out","w");
int n,i,op,x;
fscanf(in,"%d",&n);
for (i=1;i<=n;i++){
fscanf(in,"%d%d",&op,&x);
if (op == 1){
adauga (x);
}
else if (op == 2)
sterge (x);
else {
if (findx (x) == v[x%MOD].end())
fprintf (out,"0\n");
else
fprintf (out,"1\n");
}
}
fclose (in);
fclose (out);
return 0;
}