Cod sursa(job #577890)

Utilizator tinkyAndrei Ilisei tinky Data 10 aprilie 2011 18:44:15
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.82 kb
#include<fstream>
#include<vector>
#define mod 665999
using namespace std;
int n;
vector<int> v[mod];
vector<int>::iterator cauta(int x)
{
	int l=x%mod;
	vector<int>::iterator it;
	for (it=v[l].begin();it!=v[l].end();it++)
		if (*it==x)
			return it;
	return v[l].end();
}
void insereaza(int x)
{
	int l=x%mod;
	if (cauta(x)==v[l].end())
		v[l].push_back(x);
}
void sterge(int x)
{
	vector<int>::iterator it=cauta(x);
	int l=x%mod;	
	if (it!=v[l].end())
		v[l].erase(it);
}
int main()
{
	int op,a,i;
	ifstream in("hashuri.in");
	ofstream out("hashuri.out");
	in>>n;
	for (i=1;i<=n;i++)
	{
		in>>op>>a;
		if (op==1)
		{
			insereaza(a);
			continue;
		}
		if (op==2)
		{
			sterge(a);
			continue;
		}
		if (op==3)
		{
			out<<(cauta(a)!=v[a%mod].end())<<'\n';
			continue;
		}
	}
}