Cod sursa(job #1806821)

Utilizator paulstepanovStepanov Paul paulstepanov Data 15 noiembrie 2016 18:26:29
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.83 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");

const int MOD=666013;
int N;
vector <int> H[MOD];

int Find(int x)
{
    int List=x%MOD;
    for(int i=0;i<(int)H[List].size();++i)
        if(x==H[List][i]) return i;
    return -1;
}

void Insert(int x)
{
    int List=x%MOD;
    if(Find(x)==-1)
        H[List].push_back(x);
}

void Delete(int x)
{
    int List=x%MOD;
    int Poz=Find(x);
    if(Poz!=-1)
        H[List].erase(H[List].begin() + Poz);
}

void Read()
{
    fin>>N;
    for(int i=1;i<=N;++i)
    {
        int op,x;
        fin>>op>>x;
        if(op==1) Insert(x);
        if(op==2) Delete(x);
        if(op==3) fout<<(Find(x)!=-1)<<"\n";
    }
}

int main()
{
    Read();
    return 0;
}