Pagini recente » Cod sursa (job #3289341) | Cod sursa (job #3266717) | Cod sursa (job #2456623) | Cod sursa (job #1549701) | Cod sursa (job #615684)
Cod sursa(job #615684)
#include <cstdio>
#include <list>
using namespace std;
#define NMAX 200001
int n , val , op;
list<int> vec[ NMAX ];
list<int>::iterator search( list<int> li , int val ) {
list<int>::iterator it;
for(it = li.begin() ; it != li.end() ; it++)
if(*it == val)
return it;
return li.end();
}
void add( list<int> li , int val ) {
list<int>::iterator it = search( li , val );
if( it != li.end() )
li.push_back(val);
}
void del( list<int> li , int val ) {
li.remove(val);
}
void print( list<int> li , int val ) {
list<int>::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;
}