Cod sursa(job #2744979)

Utilizator IPCristianIlie Cristian IPCristian Data 25 aprilie 2021 17:19:20
Problema Hashuri Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.98 kb
#include <iostream>
#include <fstream>
#include <vector>

using namespace std;
#define MOD  666013

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

int n;
vector<int> M[MOD];

int Cautare(int x)
{
    int list = x % MOD;

    for (long long unsigned i = 0;i<M[list].size();i++)
        if (M[list][i] == x)
            return 1;

    return 0;
}

void Inserare(int x)
{
    int list = x % MOD;

    if (Cautare(x) == 0)
        M[list].push_back(x);
}

void Stergere(int x)
{
    int list = x % MOD;

    for (long long unsigned i=0;i<M[list].size();i++)
        if (M[list][i] == x)
    {
            M[list].erase(M[list].begin()+i);
            break;
    }
}

int main()
{

    int op,x;
    fin>>n;

    for (int i=0;i<n;i++)
    {
        fin>>op>>x;

        if (op == 1) Inserare(x);
        else if (op == 2) Stergere(x);
        else fout<<Cautare(x)<<endl;
    }

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