Pagini recente » Cod sursa (job #2538742) | Cod sursa (job #2148362) | Cod sursa (job #1915955) | Cod sursa (job #2926381) | Cod sursa (job #949707)
Cod sursa(job #949707)
#include <fstream>
#include <list>
using namespace std;
//#define mod 666013
#define mod 524287 //2^19-1
list<int> v[mod];
list<int>::iterator find(int x)
{
int b=x%mod;
list<int>::iterator it;
for(it=v[b].begin();it!=v[b].end();it++)
if((*it)==x)
break;
return it;
}
inline void add(int x)
{
int b=x%mod;
if(find(x)==v[b].end())
v[b].push_back(x);
}
inline void del(int x)
{
int b=x%mod;
if(find(x)!=v[b].end())
v[b].remove(x);
}
int main()
{
ifstream cin("hashuri.in");
ofstream cout("hashuri.out");
int n,x,cod,i;
cin>>n;
for(i=0;i<n;i++)
{
cin>>cod>>x;
if(cod==1)
add(x);
else if(cod==2)
del(x);
else if(cod==3)
{
if(find(x)==v[x%mod].end())
cout<<"0\n";
else
cout<<"1\n";
}
}
cin.close();
cout.close();
//system("PAUSE");
return 0;
}