Cod sursa(job #2195824)

Utilizator flibiaVisanu Cristian flibia Data 17 aprilie 2018 13:45:40
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.78 kb
#pragma GCC optimize("03")
#include <bits/stdc++.h>
#define mod 666013
#define asd vector <int> :: iterator

using namespace std;

ifstream in("hashuri.in");
ofstream out("hashuri.out");

int n, cod, x;
vector <int> v[666123];

asd find(int x){
	int hsh = x % mod;
	for(asd it = v[hsh].begin(); it != v[hsh].end(); ++it)
		if(*it == x)
			return it;
	return v[hsh].end();	
}

void baga(int x){
	if(find(x) == v[x % mod].end())
		v[x % mod].push_back(x);
}

void scoate(int x){
	auto it = find(x);
	if(it != v[x % mod].end())
		v[x % mod].erase(it);
}

int main(){
	in >> n;
	for(int i = 1; i <= n; i++){
		in >> cod >> x;
		if(cod == 1)
			baga(x);
		else if(cod == 2)
			scoate(x);
		else out << (find(x) != v[x % mod].end()) << '\n';
	}
	return 0;
}