Cod sursa(job #1135347)

Utilizator OnimushaLordTiberiu Copaciu OnimushaLord Data 7 martie 2014 18:35:11
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.8 kb
# include <cstdio>
# include <vector>
# define BG begin
# define ED end
# define PB push_back
# define ER erase
# define MOD 666013

using namespace std;

vector <int> h[MOD];
vector <int> :: iterator it;
int x,op,nr,ind,i;

vector <int> :: iterator find(int x)
{
    for(it=h[ind].BG(); it!=h[ind].ED(); ++it)
        if((*it)==x) return it;
    return it;
}

int main()
{
    freopen("hashuri.in", "r", stdin);
    freopen("hashuri.out", "w", stdout);
    scanf("%d\n", &nr);
    for(i=1; i<=nr; ++i)
    {
        scanf("%d %d\n", &op, &x);
        ind=x%MOD;
        it=find(x);
        if(op==1 && it==h[ind].ED()) h[ind].PB(x);
        if(op==2 && it!=h[ind].ED()) h[ind].ER(it);
        if(op==3 && it==h[ind].ED()) printf("0\n");
        else if(op==3) printf("1\n");
    }
}