Cod sursa(job #2866716)

Utilizator Mihai7218Bratu Mihai-Alexandru Mihai7218 Data 9 martie 2022 21:52:52
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.01 kb
#include <fstream>
#include <vector>
#include <list>
#define MODPRIM 666013
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
int n, tc, i, op, x;
vector <int> h[MODPRIM];
void add (int x)
{
    for (i = 0; i < h[x%MODPRIM].size(); i++)
    {
        if (h[x%MODPRIM][i] == x)
            return;
    }
    h[x%MODPRIM].push_back(x);
}
void deletor(int x)
{
    for (i = 0; i < h[x%MODPRIM].size(); i++)
    {
        if (h[x%MODPRIM][i] == x)
            break;
    }
    if (i < h[x%MODPRIM].size()) h[x%MODPRIM].erase(h[x%MODPRIM].begin()+i);
}
bool finder (int x)
{
    for (i = 0; i < h[x%MODPRIM].size(); i++)
    {
        if (h[x%MODPRIM][i] == x)
            return 1;
    }
    return 0;
}
int main()
{
    fin >> n;
    for (tc = 1; tc <= n; tc++)
    {
        fin >> op >> x;
        if (op == 1)
            add(x);
        if (op == 2)
            deletor(x);
        if (op == 3)
            fout << finder (x) << "\n";
    }
    return 0;
}