Cod sursa(job #2296773)

Utilizator stan_flaviusStan Flavius Stefan stan_flavius Data 5 decembrie 2018 00:20:19
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.8 kb
#include <fstream>
#define nmax 1000001
#include <vector>

using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");

const int m=524287;
vector <int> V[nmax];
int nr;

void Add(int x)
{ int val=x%m;
  int i;
  int Ex=0;
  for(i=0; i<V[val].size(); i++)
       if(V[val][i]==x) Ex=1;
  if(Ex==0) V[val].push_back(x);
}

void Delete(int x)
{ int val=x%m;
  int i;
  for(i=0; i<V[val].size(); i++)
       if(V[val][i]==x)  V[val][i]=0;
}

int existenta(int x)
{ int val=x%m;
  int i;
  for(i=0; i<V[val].size(); i++)
       if(V[val][i]==x) return 1;
  return 0;
}

int main()
{ int i,q,x;
  fin>>nr;
  for(i=1; i<=nr; i++)
     { fin>>q>>x;
       if(q==1) Add(x);
       if(q==2) Delete(x);
       if(q==3) fout<<existenta(x)<<"\n";
     }
    return 0;
}