Cod sursa(job #2748041)

Utilizator Angel1IonitaAngel Ionita Angel1Ionita Data 29 aprilie 2021 21:02:09
Problema Hashuri Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.85 kb
#include <fstream>
#include <vector>

using namespace std;

ifstream f("hashuri.in");
ofstream o("hashuri.out");
#define mod 666013
vector<int> v[mod];

vector<int>::iterator findv(int x)
{
	int xh = x % mod;
	vector<int>::iterator it;
	for (it = v[xh].begin(); it != v[xh].end(); it++)
		if (*it == x)
			return it;
	return v[xh].end();
}

void insertv(int x)
{
	int xh = x % mod;
	if (findv(x) == v[xh].end())
		v[xh].push_back(x);
}

void deletev(int x)
{
	int xh = x % mod;
	vector<int>::iterator it = findv(x);
	if (it != v[xh].end())
		v[xh].erase(it);
}

int main()
{
	int N, op, x;
	f >> N;
	for (int i = 0; i < N; i++)
	{
		f >> op >> x;
		if (op == 1)
			insertv(x);
		else if (op == 2)
			deletev(x);
		else
		{
			if (findv(x) == v[x % mod].end())
				o << '0' << endl;
			else
				o << '1' << endl;
		}
	}
}