Cod sursa(job #243169)

Utilizator firewizardLucian Dobre firewizard Data 12 ianuarie 2009 10:09:33
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.98 kb
#include <stdio.h>
#include <bitset>
#include <vector>
#define mod 666013
#define pb(a) push_back(a)
using namespace std;
vector<int> m[666015];
long i,k,n,x,y,ok;
int main()
{
    freopen ("hashuri.in","r",stdin);
    freopen ("hashuri.out","w",stdout);
    scanf("%ld",&n);
    for (;n;--n){
        scanf("%ld %ld",&y,&x);
        k=x%mod;
        if (y==1){ok=0;
           for (i=0;i<m[k].size();++i)
               if(x==m[k][i]){ok=1;break;}
            if(ok==0)m[k].pb(x);
           }
        if (y==2){ok=0;
           for (i=0;i<m[k].size();++i)
               if(x==m[k][i]){ok=1;break;}
           if (ok==1)
              if (i==m[k].size()-1)m[k].pop_back();
              else
              {m[k][i]=m[k][m[k].size()-1];m[k].pop_back();}
           }
        if (y==3){ok=0;
           for (i=0;i<m[k].size();++i)
               if (m[k][i]==x){ok=1;break;}
           printf("%ld\n",ok);
           }
               
        }
    return 0;
}