Cod sursa(job #1522311)

Utilizator Esteban_AlexCihodaru Ciprian-Alexandru Esteban_Alex Data 11 noiembrie 2015 16:12:27
Problema Hashuri Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.96 kb
#include <fstream>
#include <vector>
#include <iostream>

using namespace std;

ifstream fin("hasuri.in");
ofstream fout("hasuri.out");

int n,op,a;

#define P 123457

vector<int> h[P];

void Inserare(int x)
{
    int r;
    r=x%P;
    h[r].push_back(x);
}

int Cauta(int x)
{
    int r,z;

    unsigned int  i;

    r=x%P;

    z=h[r].size();
    for(i=0;i<z;i++)
        if(h[r][i]==x) return 1;
    return 0;
}

void Sterge (int x)
{
    int r,z;

    unsigned int i;

    r=x%P;
    z=h[r].size();

    for(i=0;i<z;i++)
        if(h[r][i]==x)
            {
                h[r][i]=h[r][z-1];
                h[r].pop_back();
                return ;
            }

}

int main()
{
    int i;

    fin>>n;

    for(i=1;i<=n;i++)
    {
        fin>>op>>a;

        if(op==1) Inserare(a);
        if(op==2) Sterge(a);
        if(op==3)
        {
            fout<<Cauta(a)<<"\n";
        }
    }
    return 0;
}