Pagini recente » Cod sursa (job #2558125) | Cod sursa (job #2662062) | Cod sursa (job #1800339) | Cod sursa (job #975673) | Cod sursa (job #905952)
Cod sursa(job #905952)
#include<fstream>
#include<vector>
#define mod 666013
#define pb push_back
#define NN 1000001
using namespace std;
ofstream out("hashuri.out");
int n;
vector<int>G[NN];
typedef vector<int>:: iterator IT;
vector<int>:: iterator find( int x)
{
int rest = x % mod;
for( IT i = G[rest].begin() ; i!= G[rest].end(); ++i )
if ( *i == x)
return i;
return G[rest].end();
}
void insert( int x )
{
int rest = x % mod;
if ( find(x) == G[rest].end() )
G[rest].pb(x);
}
void sterge( int x )
{
int rest = x % mod;
IT i = find(x);
if ( i != G[rest].end() )
G[ rest ].erase(i);
}
int main()
{
ifstream in("hashuri.in");
in >> n;
for( int tip , x ; n ; --n)
{
in >> tip >> x;
if ( tip == 1)
insert(x);
if( tip == 2 )
sterge(x);
if ( tip == 3)
out << ( find(x) == G[ x % mod].end() ? 0 : 1) << '\n';
}
return 0;
}