Pagini recente » Cod sursa (job #506352) | Cod sursa (job #2051078) | Cod sursa (job #2988356) | Cod sursa (job #1976012) | Cod sursa (job #568199)
Cod sursa(job #568199)
#include<fstream>
#include<vector>
#define prim 700001
using namespace std;
vector<int>a[(1<<20)];
unsigned A = ((1u<<31)|3462875);
vector<int>::iterator cauta(int x){
vector<int>::iterator it;
int l=(A*x>>12);
for(it=a[l].begin();it!=a[l].end();++it)
if(*it==x)
return it;
return a[l].end();
}
int main(){
int n, i,cod;
unsigned x;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
f>>n;
for(i=0;i<n;i++)
{
f>>cod>>x;
if(cod==1){
if(cauta(x)==a[(A*x>>12)].end())
a[(A*x>>12)].push_back(x);
}
else if(cod==3){
if(cauta(x)!=a[(A*x>>12)].end())
g<<"1\n";
else g<<"0\n";
}
else if(cod==2){
vector<int>::iterator it;
it=cauta(x);
if(it!=a[(A*x>>12)].end())
a[(A*x>>12)].erase(it);
}
}
f.close();
g.close();
return 0;
}