Cod sursa(job #1061240)

Utilizator hevelebalazshevele balazs hevelebalazs Data 19 decembrie 2013 14:53:48
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <stdio.h>
#include <list>
#define fr(i,a,b) for(int i=a;i<b;++i)
#define fl(i,V) for(list<int>::iterator i=V.begin();i!=V.end();++i)
#define MOD 666013
using namespace std;
list<int>H[MOD];
int n,m,v,x;
void add(int v){
    fl(i,H[x]) if(*i==v)return;
    H[x].push_back(v);
    }
void del(int v){
    fl(i,H[x]) {
        if(*i==v){H[x].erase(i);return;}
        }
    }
int q(int v){
    fl(i,H[x]) if(*i==v)return 1;
    return 0;
    }
int main(){
    freopen("hashuri.in","r",stdin);
    freopen("hashuri.out","w",stdout);
    scanf("%i",&n);
    fr(i,0,n){
        scanf("%i%i",&m,&v);
        x=v%MOD;
        if(m==1) add(v);
        if(m==2) del(v);
        if(m==3) printf("%i\n",q(v));
        }
    return 0;
    }