Pagini recente » Cod sursa (job #728006) | Cod sursa (job #2782896) | Cod sursa (job #1139308) | Cod sursa (job #2533500) | Cod sursa (job #1836906)
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
#define mod 666013
int N;
vector<int> G[mod];
inline vector<int>::iterator find_value(int x){
int list = x % mod;
vector<int>::iterator it;
for ( it = G[list].begin(); it != G[list].end(); ++it ){
if ( *it == x ) return it;
}
return G[list].end();
}
inline void insert_value(int x){
int list = x % mod;
if ( find_value(x) == G[list].end() )
G[list].push_back(x);
}
inline void erase_value(int x){
int list = x % mod;
vector<int>::iterator it = find_value(x);
if ( it != G[list].end() )
G[list].erase(it);
}
int main()
{
int op, x;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
for ( int i = 1; i <= N; ++i ){
cin >> op >> x;
if ( op == 1 ){ insert_value(x); continue;}
if ( op == 2 ){ erase_value(x); continue;}
g << (find_value(x) != G[x%mod].end()) << "\n";
}
f.close();
g.close();
return 0;
}