Cod sursa(job #488291)

Utilizator cosmyoPaunel Cosmin cosmyo Data 28 septembrie 2010 09:27:40
Problema Hashuri Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.93 kb
#include<vector>
#include<cstdio>
const int MOD = 666013;
const int NMAX=1000005;
using namespace std;
int n;

vector<int> v[NMAX];
typedef vector<int>::iterator IT;
IT querry(int x)
{IT it;
 int k=x%MOD;
  for(it=v[k].begin();it!=v[k].end();++it)
   if(*it==x)
    return it;
 return it;
}
void update(int x)
{IT it;
 it=querry(x);
  if(it==v[x%MOD].end())
     v[x%MOD].push_back(x);
 }
void  erase(int x)
{IT it;
 it=querry(x);
  if(it!=v[x%MOD].end())
  v[x%MOD].erase(it);
}
int main()
{freopen("hashuri.in","r",stdin);
 freopen("hashuri.out","w",stdout);
 int i,op,x,j;
  scanf("%d",&n);
  for(i=1;i<=n;++i)
    {scanf("%d %d",&op,&x);
      if(op==1)
       update(x);
       else
      if(op==2)
       erase(x);
       else
      if(querry(x)!=v[x%MOD].end())
       printf("%d\n",1);
       else
       printf("%d\n",0);

    }
  fclose(stdin);
  fclose(stdout);
  return 0; 
}