Pagini recente » Cod sursa (job #1625338) | Cod sursa (job #1822347) | Cod sursa (job #1541126) | Cod sursa (job #2058572) | Cod sursa (job #1344737)
#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 ;
}