Cod sursa(job #1344737)

Utilizator superman_01Avramescu Cristian superman_01 Data 16 februarie 2015 22:38:40
Problema Hashuri Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1 kb
#include <fstream>
#include <algorithm>
#include <vector>
#include <cstring>

#define MOD 666013
#define get_max(a,b) ((a)>(b)?(a):(b))
#define get_min(a,b) ((a)<(b)?(a):(b))

using namespace std;

ifstream in ( "hashuri.in" );
ofstream out ( "hashuri.out" );

vector < int > Hash[MOD] ;
 int N , key  ;

vector < int > ::iterator Find ( int X ){
 for ( vector < int > ::iterator it = Hash[key].begin() ; it != Hash[key].end() ; ++it )
     if ( *it = X  )
     return it;
  return  Hash[key].end();
}


 void Add ( int X ){

   if ( Find(x) == Hash[key].end() )
        Hash[key].push_back(X);
 }

void Delele ( int X ){
  vector < int > ::iterator it = Find(X);
  if ( it != Hash[key].end() )
  Hash.erase(it);
}


 int main ( void ){
   int i , j ;
   in >> N ;
   for ( i = 1 ; i <= N ; ++i )
   {
      in >> type >> elem ;
      key = X % MOD;
     if ( type == 1 ) Add ( elem ) ;
     if ( type == 2 ) Delete ( elem ) ;
     if ( type ==  3 ) out << ( Find(x) != Hash[key].end  ) << "\n" ;

   }
   return 0 ;
}