Cod sursa(job #2406126)

Utilizator DovlecelBostan Andrei Dovlecel Data 15 aprilie 2019 13:33:03
Problema Hashuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.88 kb
#include <fstream>
#include <vector>

using namespace std;
ifstream in("hashuri.in");
ofstream out("hashuri.out");
const int MOD=66013;
vector<int>a[MOD];
vector<int>::iterator findval(int x)
{
    int hesh=x%MOD;
    vector<int>::iterator it;
    for(it=a[hesh].begin();it!=a[hesh].end();it++)
        if(*it==x)
            return it;
    return a[hesh].end();
}
void insertval(int x)
{
    int hesh=x%MOD;
    if(findval(x)==a[hesh].end())
        a[hesh].push_back(x);
}
void eraseval(int x)
{
    int hesh=x%MOD;
    vector<int>::iterator it=findval(x);
    if(it!=a[hesh].end())
        a[hesh].erase(it);
}

int main()
{
    int x,val;
    while(in>>x>>val)
    {
        if(x==1)
            insertval(val);
        else if(x==2)
            eraseval(val);
        else
            out<<(findval(val)!=a[val%MOD].end())<<'\n';
    }
    return 0;
}