Cod sursa(job #2622862)

Utilizator florian_petrutCoaje Petrut florian_petrut Data 1 iunie 2020 23:24:59
Problema Hashuri Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.91 kb
#include <iostream>
#include <fstream>
#include <vector>
#define mod 66013
using namespace std;
vector<int> hashtable[mod];

void Add(int x){
        hashtable[x%mod].push_back(x);
}
int Search(int x){
    int index=x%mod;
        for(unsigned i=0; i< hashtable[index].size(); i++)
                if(hashtable[index][i] == x)
                        return 1;

    return 0;
}
void Delete(int x){
    int m = x % mod;
    for (unsigned i = 0; i < hashtable[m].size(); i++)
        if(hashtable[m][i] == x)
            hashtable[m].erase(hashtable[m].begin()+i);
}
int main()
{
    ifstream f("hashuri.in");
    ofstream g("hashuri.out");

    int n,x,op;
    f>>n;
    for(;n;n--){
        f>>op>>x;
        if(op==1)
            Add(x);
            else if(op==2)
                Delete(x);
                else g<<Search(x)<<endl;
    }
    f.close();
    g.close();
    return 0;
}