Pagini recente » Cod sursa (job #3251972) | Cod sursa (job #2369594) | Cod sursa (job #229408) | Cod sursa (job #1545786) | Cod sursa (job #615701)
Cod sursa(job #615701)
#include <cstdio>
#include <list>
using namespace std;
#define NMAX 200001
int n , val , op;
#define List list<int>
#define Iterator List::iterator
List vec[ NMAX ];
Iterator search( List & li , int val ) {
Iterator it;
for(it = li.begin() ; it != li.end() ; it++)
if(*it == val)
return it;
return li.end();
}
void add( List & li , int val ) {
Iterator it = search( li , val );
if( it == li.end() )
li.push_back(val);
}
void del( List & li , int val ) {
li.remove(val);
}
void print( list<int> & li , int val ) {
Iterator it = search( li , val );
if(it != li.end() )
printf("1\n");
else
printf("0\n");
}
int main() {
freopen("hashuri.in","r",stdin);
freopen("hashuri.out","w",stdout);
scanf("%d",&n);
for(int i = 1 ; i <= n ; i++) {
scanf("%d %d",&op,&val);
switch( op ) {
case 1:
add( vec[ val % NMAX ] , val);
break;
case 2:
del( vec[ val % NMAX ] , val);
break;
case 3:
print( vec[ val % NMAX ] , val );
break;
}
}
return 0;
}