Cod sursa(job #643383)

Utilizator danieladDianu Daniela danielad Data 3 decembrie 2011 16:42:14
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.91 kb
#include<vector>
#include<fstream>
#define prim 666013
using namespace std;

vector <int> v[prim];
int n;

bool verif(int b){
  int n;
  n=b%prim;
  for(int j=0;j<v[n].size();j++)
  if(b==v[n][j])return 1;
  return 0;
}
void stergere(int b){
  int n=b%prim;
  for(int j=0;j<v[n].size();j++){
    if(b==v[n][j]){
      
      v[n][j]=v[n][v[n].size()-1];
      v[n].pop_back();
    }
  }
}
void inserare(int b){
  if(verif(b)==0)
  v[b%prim].push_back(b);
}
int main()
{
FILE *fin=fopen("hashuri.in","r");
FILE *fout=fopen("hashuri.out","w");
fscanf(fin,"%d",&n);

int op,x;

for(int i=1;i<=n;i++){
  fscanf(fin,"%d%d",&op,&x);
  switch(op){
    case 1:
      inserare(x);
      break;
    case 2:
      stergere(x);
      break;
    case 3:
      if(verif(x)){
                  fprintf(fout,"1\n");
              }else fprintf(fout,"0\n");
      break;
    }
  }


return 0;
}