Cod sursa(job #858864)

Utilizator deea101Andreea deea101 Data 19 ianuarie 2013 14:35:58
Problema Hashuri Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.74 kb
#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';
	}
}