Cod sursa(job #564108)

Utilizator marta_diannaFII Filimon Marta Diana marta_dianna Data 26 martie 2011 18:50:06
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.83 kb
#include<fstream>
#include <list>
#define P 666013

using namespace std;

ifstream f("hashuri.in");
ofstream g("hashuri.out");

int n, op, x, i;
list<int> a[P];
list<int> ::  iterator it;

void insereaza(int x, int i)
{
	int ok=0;
	for (it=a[i].begin(); it!=a[i].end(); ++it)
		if (*it==x) { ok=1; break;}
	if (!ok) a[i].push_back(x);
}

void sterge(int x, int i)
{
	int ok=0;
	for (it=a[i].begin(); it!=a[i].end(); ++it)
		if(*it==x){ok=1;break;}
	if (ok) a[i].erase(it);
}

int cauta(int x, int i)
{
	int ok=0;
	for (it=a[i].begin(); it!=a[i].end(); ++it)
		if(*it==x){ok=1;break;}
	return ok;
}

int main()
{
	f>>n;
	
	for (i=1; i<=n; ++i)
	{
		f>>op>>x;
		if (op==1) insereaza(x, x%P);
		else if (op==2) sterge(x, x%P);
		else g<<cauta(x, x%P)<<"\n";
	}
	
	f.close();
	g.close();
	return 0;
}