Cod sursa(job #2620940)

Utilizator vladdudauDudau Vlad vladdudau Data 29 mai 2020 22:33:07
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.23 kb
#include <bits/stdc++.h>
#define MOD 777973

using namespace std;

vector<int> Hash[MOD];

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

int n;

int CautaElement(int element)
{
    int val = element % MOD;

    vector<int>::iterator it;

    for (it = Hash[val].begin(); it != Hash[val].end(); ++it)
        if ( *it == element)
            return 1;

    return 0;

}

void InsereazaElement(int element)
 {
    int valoare = element % MOD;

    if (!CautaElement(element))
        Hash[valoare].push_back(element);
}

void StergeElement(int element)
{
    int valoare = element % MOD;
    vector<int>::iterator it;
    for(it=Hash[valoare].begin();it!=Hash[valoare].end();++it)
        if(*it==element)
    {
        Hash[valoare].erase(it);
        break;
    }
}
int main()
{
    int n;
    fin>>n;
    for(int i=1;i<=n;++i)
        {
            int op,element;
            fin>>op>>element;
            if(op==1)
                InsereazaElement(element);
            else if(op==2)
            {
                if(CautaElement(element))
                    StergeElement(element);
            }

            else
                fout<<CautaElement(element)<<"\n";
        }
}