Cod sursa(job #1836167)

Utilizator tanasaradutanasaradu tanasaradu Data 27 decembrie 2016 22:05:06
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.83 kb
#include <bits/stdc++.h>
#define p 1000003
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
vector<int>h[p];
int n;
inline void Adauga(int x)
{
    h[x%p].push_back(x);
}
inline void Stergere(int x)
{
    int r,k,i;
    r=x%p;
    k=h[r].size();
    for(i=0;i<k;i++)
        if(h[r][i]==x)
    {
        h[r][i]=h[r][k-1];
        h[r].pop_back();
    }
}
inline int Gasire(int x)
{
    int r,k,i;
    r=x%p;
    k=h[r].size();
    for(i=0;i<k;i++)
        if(h[r][i]==x)
            return 1;
    return 0;
}
int main()
{
    int op,i,x;
    fin>>n;
    for(i=1;i<=n;i++)
    {
        fin>>op>>x;
        if(op==1)
            Adauga(x);
        else if(op==2)
            Stergere(x);
        else fout<<Gasire(x)<<"\n";
    }
    fin.close();
    fout.close();
}