Cod sursa(job #773021)

Utilizator BlackLordFMI Alex Oprea BlackLord Data 31 iulie 2012 19:24:55
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include <fstream>
#include <vector>

using namespace std;

#define DIMMOD 493127
//#define DIMMOD 30

vector<int> V[DIMMOD];
int N, i, poz, val, op;
/*
7
1 3
1 20
2 7
3 4
3 20
2 20
3 20
*/

int find(int x) {
	int list = x % DIMMOD;
	for (int i = 0;i<V[list].size();i++)
		if (V[list][i] == x) {
			return i;
		}
	return -1;
}

int main() {
	
	ifstream f("hashuri.in");
	ofstream g("hashuri.out");
	f>>N;
	for (;N;N--) {
		f>>op>>val;
		if (op == 1) {
			if (find(val) == -1)
				V[val%DIMMOD].push_back(val);
		} else if (op == 2){
			if ((poz = find(val)) != -1) {
				V[val%DIMMOD].erase(V[val%DIMMOD].begin() + poz);
			}
		} else {
			g<<((find(val) == -1) ? 0 : 1)<<"\n";
		}
	}
	
}