Pagini recente » Cod sursa (job #2585945) | Cod sursa (job #3150884) | Cod sursa (job #1637598) | Cod sursa (job #1523721) | Cod sursa (job #629731)
Cod sursa(job #629731)
#include<stdio.h>
#include<vector>
#define hf 666013
using namespace std;
vector <int> hash_table[hf];
int n;
void op1(int element){
for(unsigned int i=0;i<hash_table[element%hf].size();i++)
if(hash_table[element%hf][i]==element)
return;
hash_table[element%hf].push_back(element);
}
void op2(int element){
for(unsigned int i=0;i<hash_table[element%hf].size();i++)
if(hash_table[element%hf][i]==element){
int c=hash_table[element%hf][i];
hash_table[element%hf][i]=hash_table[element%hf].back();
hash_table[element%hf].pop_back();
return;
}
}
void op3(int element){
for(unsigned int i=0;i<hash_table[element%hf].size();i++)
if(hash_table[element%hf][i]==element){
printf("1\n");
return;
}
printf("0\n");
}
int main(){
freopen("hashuri.in","r",stdin);
freopen("hashuri.out","w",stdout);
int operatie,element;
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d%d",&operatie,&element);
if(operatie==1)
op1(element);
else
if(operatie==2)
op2(element);
else
op3(element);
}
return 0;
}