Cod sursa(job #1167932)

Utilizator mvcl3Marian Iacob mvcl3 Data 6 aprilie 2014 12:23:24
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.89 kb
#include <unordered_set>
#include <fstream>

#define in "hashuri.in"
#define out "hashuri.out"

std :: ifstream f(in);
std :: ofstream g(out);

class HashTable {
    protected :
        std :: unordered_set < int >    my_table;
    public  :
        void Put(int x) {
            if(my_table.find(x) == my_table.end())
                my_table.insert(x);
        }

        void Remove(int x)  {
            my_table.erase(x);
        }

        bool Search(int x)  {
            if(my_table.find(x) == my_table.end())  return 0;

            return 1;
        }
};

int main()  {
    HashTable   obj;
    int N;

    f >> N;
    for(int type, x, i = 1; i <= N; ++i)    {
        f >> type >> x;

        switch(type)    {
            case 1 : { obj.Put(x);    break;  }
            case 2 : { obj.Remove(x); break;  }
            case 3 : { g << obj.Search(x) << '\n'; break;  }
        }
    }

    return 0;
}