Pagini recente » Cod sursa (job #2743026) | Cod sursa (job #1874308) | Cod sursa (job #71985) | Cod sursa (job #745343)
Cod sursa(job #745343)
#include <fstream>
#define pb push_back
#define M 666013
#include <list>
using namespace std;
int i,j,n,m,tip;
int x;
int D;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
list<int> V[M+1];
list<int> ::iterator it;
void Push(int k)
{
D=k%M;
V[D].pb(k);
}
void Del(int k)
{
D=k%M;
for(it=V[D].begin();it!=V[D].end()&&*it!=k;++it);
if (it!=V[D].end())
V[D].erase(it);
}
int caut(int k)
{
D=k%M;
for(it=V[D].begin();it!=V[D].end()&&*it!=k;++it);
if (it!=V[D].end())
return 1;
else return 0;
}
int main()
{
f>>n;
for(j=1;j<=n;++j)
{
f>>tip>>x;
if (tip==1) Push(x);
if(tip==2) Del(x);
if (tip==3)g<<caut(x)<<'\n';
/*for(i=1;i<=30;++i,g<<'\n')
for(it=V[i].begin();it!=V[i].end();++it)
g<<*it<<" ";
*/}
f.close();
g.close();
}