Cod sursa(job #2626003)

Utilizator DariaCretuCretu Daria Stefana DariaCretu Data 6 iunie 2020 11:22:09
Problema Hashuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.03 kb


#include <iostream>
#include <vector>
#include <fstream>
#define mod 168457
ifstream f("hashuri.in");
ofstream g("hashuri.out");
using namespace std;
int n, op, x;
vector<int> vec[mod];

int cautare(int n)
{
    int i = n % mod;
    vector<int>::iterator it;
    for (it = vec[i].begin(); it != vec[i].end(); ++it)

        if (*it == n)
            return 1;
    return 0;
}

void adauga(int n)
{
    int i = n % mod;
    if (!cautare(n))
        vec[i].push_back(n);
}


void stergere(int n)
{
    int i = n % mod;
    vector<int>::iterator it;
    for (it = vec[i].begin(); it != vec[i].end(); it++)
        if (*it == n)
        {
            vec[n % mod].erase(it);
            break;
        }


}
int main()
{
    f >> n;
    for (int i = 1; i <= n; i++)
    {
        f >> op >> x;
        if (op == 1)
            adauga(x);
        else if (op == 2)
        {

            if (cautare(x))
                stergere(x);
        }
        else g << cautare(x);
    }
    return 0;
}