Cod sursa(job #2894296)

Utilizator Valentin06Maftei Valentin Valentin06 Data 27 aprilie 2022 18:09:52
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.06 kb
#include <iostream>
#include <vector>
#include <fstream>

using namespace std;
#define NMAX 666013

ifstream in("hashuri.in");
ofstream out("hashuri.out");
vector<int> Elemente[NMAX];
int N, op, x;

int cautare_valoare(int x){
    for (auto i = 0; i < Elemente[x % NMAX].size(); i++)
        if (Elemente[x % NMAX][i] == x)
            return 1;
    return 0;
}

void inserare_valoare(int x){
    if(cautare_valoare(x) == 0)
        Elemente[x % NMAX].push_back(x);
}

void stergere_valoare(int x){
    for(auto i = 0; i < Elemente[x % NMAX].size(); i++)
        if (Elemente[x % NMAX][i] == x) {
            for (int j = i; j < Elemente[x % NMAX].size(); j++)
                Elemente[x % NMAX][j] = Elemente[x % NMAX][j + 1];
            Elemente[x % NMAX].pop_back();
            break;
        }
}

int main() {
    in >> N;
    for (int i = 0; i < N; i++) {
        in >> op >> x;
        if (op == 1)
            inserare_valoare(x);
        if (op == 2)
            stergere_valoare(x);
        if (op == 3)
            out << cautare_valoare(x) << '\n';
    }
    return 0;
}