Cod sursa(job #2896212)

Utilizator AntoniaPopoviciAntonia-Adelina Popovici AntoniaPopovici Data 29 aprilie 2022 21:14:44
Problema Hashuri Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.93 kb
#include<fstream>
#include <list>
#define mod 666013

using namespace std;

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

int n, op, x, i;
list<int> l[mod];
list<int> ::iterator it;

void insert(int x, int i)
{
	int ok = 0;
	for (it = l[i].begin(); it != l[i].end(); ++it)
		if (*it == x) { ok = 1; break; }
	if (!ok) l[i].push_back(x);
}

void del(int x, int i)
{
	int ok = 0;
	for (it = l[i].begin(); it != l[i].end(); ++it)
		if (*it == x) { ok = 1; break; }
	if (ok) l[i].erase(it);
}

int search(int x, int i)
{
	int ok = 0;
	for (it = l[i].begin(); it != l[i].end(); ++it)
		if (*it == x)
		{
			ok = 1;
			break;
		}
	return ok;
}

int main()
{
	fin >> n;

	for (i = 1; i <= n; ++i)
	{
		fin >> op >> x;
		if (op == 1)
			insert(x, x % mod);
		else if (op == 2)
			del(x, x % mod);
		else
			fout << search(x, x % mod) << "\n";
	}

	fin.close();
	fout.close();
	return 0;
}