Pagini recente » Cod sursa (job #788540) | Cod sursa (job #2737516) | Cod sursa (job #405437) | Cod sursa (job #624456) | Cod sursa (job #2171191)
#include <iostream>
#include <fstream>
#include <vector>
#define NMAX 1000020
#define MOD 666683
using namespace std;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
vector<int> p[MOD];
vector<int>::iterator it;
int n, x, a[NMAX];
int findX(int x){
int l=x%MOD;
for(auto k : p[l]){
if(k==x) return 1;
}
return 0;
}
void addX(int x){
if(!findX(x)){
int l=x%MOD;
p[l].push_back(x);
}
}
void deleteX(int x){
if(findX(x)){
int l=x%MOD;
for(it=p[l].begin(); it<=p[l].end(); it++){
if(*it==x){
p[l].erase(it);
break;}
}
}
}
int main()
{
f>>n;
for(int i=1; i<=n; i++){
int op, x;
f>>op>>x;
if(op==1) addX(x);
else if(op==2) deleteX(x);
else g<<findX(x)<<'\n';
}
return 0;
}