Cod sursa(job #521109)

Utilizator Andreid91Ciocan Andrei Andreid91 Data 11 ianuarie 2011 11:18:01
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.93 kb
#include<fstream.h>
#include<algorithm>
#include<vector>

#define MOD 200000

using namespace std;

vector<int> v[700000];

vector<int> :: iterator it;

int main()
{
	
	int n,k,i,sw,op,a;

	
	ifstream f("hashuri.in");
	ofstream g("hashuri.out");
	f>>n;
	
	double x=(1+2.236067977)/2;
	while (x>1) x--;
	for(i=1;i<=n;++i)
	{
		f>>op>>a;
		if (op==1)
		{
			k=(int)MOD*(x*a-(int)(x*a));
			sw=0;
			for(it=v[k].begin();it<v[k].end() && !sw;++it)
				if (*it==a)
					sw=1;
			if (!sw) 
				v[k].push_back(a);
		}
		else 
			if (op==2)
			{
				k=(int)MOD*(x*a-(int)(x*a));
			sw=0;
			for(it=v[k].begin();!sw && it<v[k].end() ;++it)
				if (*it==a)
				{
					v[k].erase(it);
					sw=1;
				}
			}
			else
			{
			k=(int)MOD*(x*a-(int)(x*a));
			sw=0;
			for(it=v[k].begin();it<v[k].end() && !sw;++it)
				if (*it==a)
					sw=1;
			g<<sw<<'\n';
			}
	}
	f.close();
	g.close();
	return 0;
}