Cod sursa(job #1512679)

Utilizator trutruvasilicaHuhurez Marius trutruvasilica Data 28 octombrie 2015 14:52:38
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.87 kb
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
const int mod=7013;
vector<int>H[mod];
void adauga(int x)
{
    H[x%mod].push_back(x);
}
void sterge(int x)
{
    int zum=x%mod;
    for(vector<int>::iterator it=H[zum].begin();it!=H[zum].end();it++)
    {
        if(*it==x)
        {
            *it=H[zum].back();
            H[zum].pop_back();
            return;
        }
    }
}
bool cauta(int x)
{
    int zum=x%mod;
    for(vector<int>::iterator it=H[zum].begin();it!=H[zum].end();it++)
    {
        if(*it==x)
        {
            return 1;
        }
    }
    return 0;
}
int main()
{
    int n,ok,x,i;
    fin>>n;
    for(i=1;i<=n;i++)
    {
        fin>>ok>>x;
        if(ok==1) adauga(x);
        if(ok==2) sterge(x);
        if(ok==3) fout<<cauta(x)<<"\n";
    }
}