Cod sursa(job #641913)

Utilizator AnaTudorTudor Ana Maria Mihaela AnaTudor Data 29 noiembrie 2011 22:00:16
Problema Hashuri Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.06 kb
#include<stdio.h>
#include<vector>
# define impartitor 666013
using namespace std;

vector<int> v[impartitor];

vector<int>::iterator gasire(int x)
{
     vector<int>::iterator it;
     int a=x%impartitor;
     for (it=v[a].begin();it!=v[a].end();++it)
       if (*it==x)
       return it;
     return v[a].end();
}

void inserare( int x)
{
    int a=x % impartitor;
     if (gasire(x)==v[a].end())
      v[a].push_back(x);
}

void sterg(int y)
{
    int a=y%impartitor;
     vector<int>::iterator it=gasire(y);
     if (it!=v[a].end())
      v[a].erase(it);
}


int main()
{
freopen("hashuri.in","r",stdin);
freopen("hashuri.out","w",stdout);
 int n,op,x;
 scanf("%d",&n);
 for(int i=1;i<=n;++i)
  {
       scanf("%d%d",&op,&x);
       if (op==1)
        inserare(x);
        else
         if (op==2)
           sterg(x);
             else
               if (op==3)
                 if(gasire(x)!=v[x%impartitor].end())
                   printf("1");
                   else
                    printf("0");


  }
    return 0;
}