Pagini recente » Cod sursa (job #3000733) | Cod sursa (job #57935) | Cod sursa (job #311062) | Cod sursa (job #3218654) | Cod sursa (job #1312210)
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
#define nnn 700000
int n,op,nr;
vector<int> a[nnn];
inline vector<int>::iterator cauta(int nr)
{int k=nr%nnn;
vector<int>::iterator it;
for( it=a[k].begin(); it!=a[k].end(); it++)
if(*it == nr)
return it;
return a[k].end();
}
inline void adauga(int nr)
{int k=nr%nnn;
if(cauta(nr) == a[k].end())
a[k].push_back(nr);
}
inline void sterge(int nr)
{int k=nr%nnn;
vector<int>::iterator it = cauta(nr);
if( it!=a[k].end())
a[k].erase(it);
}
int main()
{
ifstream f("hashuri.in");
ofstream g("hashuri.out");
f>>n;
for(op=1;op<=n;op++)
{
f>>op>>nr;
if(op==1)
{
adauga(nr);
}
if(op==2)
{
sterge(nr);
}
if(op==3)
{
g<< (cauta(nr) != a[nr%nnn].end())<<endl;
}
}
f.close();
g.close();
return 0;
}