Cod sursa(job #2772717)

Utilizator bestman4111Tiberiu Niculae bestman4111 Data 2 septembrie 2021 15:19:54
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.27 kb
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;

ifstream cit("hashuri.in");
ofstream afis("hashuri.out");

vector<int> v[666013];

void introd_val(int x){
    int poz = x % 666013;
    bool ok = true;
    for(int i = 0; i < v[poz].size(); i++){
        if(v[poz][i] == x){
            ok = false;
            break;
        }
    }
    if(ok == true){
        v[poz].push_back(x);
    }
}

void sterg_val(int x){
    int poz = x % 666013;
    for(int i = 0; i < v[poz].size(); i++){
        if(v[poz][i] == x){
            v[poz][i] = v[poz][v[poz].size() - 1];
            v[poz].pop_back();
            break;
        }
    }
}

unsigned gasesc_val(int x){
    int poz = x % 666013;
    for(int i = 0; i < v[poz].size(); i++){
        if(v[poz][i] == x){
            return 1;
        }
    }
    return 0;
}

int main()
{
    int op, x, N;
    cit>>N;
    for(int i = 0; i < N; i++){
        cit>>op>>x;
        if(op == 1){
            introd_val(x);
        }
        else{
            if(op == 2){
                sterg_val(x);
            }
            else{
                if(op == 3){
                    afis<<gasesc_val(x)<<"\n";
                }
            }
        }
    }
    return 0;
}