Cod sursa(job #1701556)

Utilizator MateibMatei Bargau Mateib Data 13 mai 2016 14:40:29
Problema Hashuri Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 1.14 kb
#include <fstream>
#include <vector>
#define MOD 666013
using namespace std;
vector<int>::iterator it;
vector<int> Hash[MOD];
int n, i, pp=0, op, nr;
int val (int nr)
        {
            int r= nr% MOD;
            for(it=Hash[r].begin(); it!=Hash[r].end(); ++it)
                    if (*it == nr)
                        return 1;
            return 0;
        }

int main()
{
    ifstream in ("hashuri.in");
    ofstream out ("hashuri.out");
    in >> n;

    for(i=1; i<=n; i++)
        {
            in>>op>>nr;
            int r=nr%MOD;
            if (op==1)
                if(val(nr)==0)
                    Hash[r].push_back(nr);
            if(op==2)
                for(it=Hash[r].begin();it!=Hash[r].end(); ++it)
                        if(*it==nr)
                        {
                            Hash[r].erase(it);
                            it--;
                        }
            if(op==3)
                {
                    if(val(nr)==1)
                        out<<"1"<<endl;
                    else
                        out<<"0"<<endl;
                }
        }


    return 0;
}