Cod sursa(job #1049296)

Utilizator cosmin.pascaruPascaru Cosmin cosmin.pascaru Data 7 decembrie 2013 10:13:39
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <cstdio>
#include <vector>
#define M 50000
using namespace std;

vector<int> h[M];

int cautare(int x)
{
    int k=x%M;
    for (int i=0;i<h[k].size();++i)
        if (h[k][i]==x) return i;
    return -1;
}
void inserare(int x)
{
    int k=x%M;
    if (cautare(x)==-1) h[k].push_back(x);
}
void stergere(int x)
{
    int poz=cautare(x),k=x%M;
    if (poz>=0) h[k].erase(h[k].begin()+poz);
}

int main()
{
    int op,x,n;
    freopen("hashuri.in","r",stdin);
    freopen("hashuri.out","w",stdout);
    scanf("%d",&n);
    for (int i=0;i<n;++i)
    {
        scanf("%d %d",&op,&x);
        if (op==1) inserare(x);
        if (op==2) stergere(x);
        if (op==3) printf("%d\n",cautare(x)>=0?1:0);
    }
    return 0;
}