Pagini recente » Cod sursa (job #1782094) | Cod sursa (job #841007) | Cod sursa (job #888951) | Cod sursa (job #2094179) | Cod sursa (job #1517685)
//HASHURI INFOARENA
#include<iostream>
#include<fstream>
#define MAXN 1000003
#define MOD 666019
using namespace std;
int k;
int lista[MOD],val[MAXN],nxt[MAXN];
int cauta(int x){
int p=lista[x%MOD];
while (p){
if (val[p]==x)
return p;
p=nxt[p];
}
return 0;
}
void adauga(int x){
int p=lista[x%MOD];
if (cauta(x)!=0)
return;
int r=x%MOD;
k++;
val[k]=x;
nxt[k]=lista[r];
lista[r]=k;
}
void sterge(int x){
int p=cauta(x);
if (p!=0) val[p]=-1;
}
int main(){
int n,i,t,x;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
f>>n;
for (i=1; i<=n; i++){
f>>t>>x;
if (t==1) adauga(x);
if (t==2) sterge(x);
if (t==3)
if (cauta(x)!=0) g<<"1"<<'\n';
else g<<"0"<<'\n';
}
f.close();
g.close();
return 0;
}