Cod sursa(job #958103)

Utilizator fred1fred fred fred1 Data 6 iunie 2013 22:11:29
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.88 kb
using namespace std;
#include<fstream>
#include<vector>
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
#define MOD 666013
vector<int>G[MOD];
vector<int>::iterator find(int x)
{
	vector<int>::iterator it;
	int list=x%MOD;
	for(it=G[list].begin();it!=G[list].end();it++)
		if(*it==x)
			return it;
	return G[list].end();
}	
void insert(int x)
{
	int list=x%MOD;
	if(find(x)==G[list].end())
		G[list].push_back(x);
}
void erase(int x)
{
	int list=x%MOD;
	vector<int>::iterator it;
	it=find(x);
	if(it!=G[list].end())
		G[list].erase(it);
}
int main()
{
	int N, x,i, y, list;
	vector<int>::iterator it;
	fin>>N;
	for(i=1;i<=N;i++)
	{
		fin>>x>>y;
		if(x==1)
			insert(y);
		if(x==2)
			erase(y);
		if(x==3)
		{
			list=y%MOD;
			it=find(y);
			if(it==G[list].end())
				fout<<0<<"\n";
			else
				fout<<1<<"\n";
		}
	}
	return 0;
}