Cod sursa(job #733776)

Utilizator m_mihai92Mocanu Mihai m_mihai92 Data 12 aprilie 2012 23:14:15
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 1.05 kb
//============================================================================
// Name        : hash_tables.cpp
// Author      : 
// Version     :
// Copyright   : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================

#include <fstream>
#include <vector>
using namespace std;

#define max 666013
vector<int> V[max];

vector<int>::iterator pozitia(int nr){
	vector<int>::iterator i;
	for (i=V[nr % max].begin(); i!=V[nr % max].end(); i++)
		if (nr == *i) return i;
	return V[nr % max].end();
}

int main(){
	int n, op, nr;
	ifstream in("hashuri.in");
	ofstream out("hashuri.out");
	in>>n;

	for (int i=0; i<n; i++){
		in>>op>>nr;
		if (op == 1){
			if (pozitia(nr) == V[nr % max].end()) V[nr % max].push_back(nr);
		}
		else if (op == 2){
			vector<int>::iterator j;
			j=pozitia(nr);
			if (j != V[nr % max].end()) V[nr % max].erase(j);
		}
		else if (op == 3){
			if (pozitia(nr) != V[nr % max].end())	out<<"1\n";
			else out<<"0\n";
		}
	}

	in.close();
	out.close();
	return 0;
}