Pagini recente » Monitorul de evaluare | Cod sursa (job #2535945) | Cod sursa (job #803458) | Cod sursa (job #743868) | Cod sursa (job #858864)
Cod sursa(job #858864)
#include <fstream>
#include <list>
using namespace std;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
list <long long> v[666013];
list <long long>::iterator it;
int MOD=666013;
void eliminare(long long x)
{
long long i;
i=x%MOD;
for(it=v[i].begin();it!=v[i].end();it++)
{ if(*it==x) v[i].erase(it); return; }
}
long long find(long long x)
{
long long i;
i=x%MOD;
for(it=v[i].begin();it!=v[i].end();it++)
if(*it==x) return 1;
return 0;
}
void adaugare(long long x)
{
if(!find(x))
{
long long i=x%MOD;
v[i].push_back(x);
}
}
int main()
{
long long n,i,c,x;
f>>n;
for(i=1;i<=n;i++)
{
f>>c>>x;
if(c==1)
adaugare(x);
if(c==2)
eliminare(x);
if(c==3)
g<<find(x)<<'\n';
}
}