Cod sursa(job #1916296)

Utilizator stefanst77Luca Stefan Ioan stefanst77 Data 9 martie 2017 08:57:34
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.91 kb
#include <bits/stdc++.h>
#define p 123457

using namespace std;

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

vector <int> a[p];
int n;

void Adauga(int x)
{
    int r;
    r=x%p;
    a[r].push_back(x);
}

void Sterge(int x)
{
    int i, r, lung;
    r=x%p;
    lung=a[r].size();
    for (i=0; i<lung; i++)
        if (a[r][i]==x)
        {
            a[r][i]=a[r].back();
            a[r].pop_back();
            return;
        }
}

inline bool Cauta(int x)
{
    int i, r, lung;
    r=x%p;
    lung=a[r].size();
    for (i=0; i<lung; i++)
        if (a[r][i]==x) return true;
    return false;
}

void Citire()
{
    int i, x, op;
    fin >> n;
    for (i=1; i<=n; i++)
    {
        fin >> op >> x;
        if (op==1) Adauga(x);
        else if (op==2) Sterge(x);
        else fout << Cauta(x) << "\n";
    }
}

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