Cod sursa(job #425008)

Utilizator gabipurcaruGabi Purcaru gabipurcaru Data 25 martie 2010 13:37:11
Problema Hashuri Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.08 kb
#include <slist>
#include <fstream>
using namespace std;

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

slist<int> H[1000007];
slist<int>::iterator it;

int n,i,j,op,val;
int hash_func(int val)
{
    return val%1000007;
}

int main()
{
    in>>n;
    for(i=1; i<=n; i++)
    {
        in>>op>>val;
        if(op == 1)
        {

            it = H[hash_func(val)].begin();
            while(*it != val && it != H[hash_func(val)].end())
                it++;
            if(it == H[hash_func(val)].end())
                H[hash_func(val)].push_back(val);//push_back(val);
        }
        else if(op == 2)
        {
            it = H[hash_func(val)].begin();
            while(*it != val && it != H[hash_func(val)].end())
                it++;
            if(it != H[hash_func(val)].end())
                H[hash_func(val)].erase(it);
        }
        else if(op == 3)
        {
            it = H[hash_func(val)].begin();
            while(*it != val && it != H[hash_func(val)].end())
                it++;
            out <<(it != H[hash_func(val)].end())<<'\n';
        }
    }
    return 0;
}