Cod sursa(job #2174790)

Utilizator GeorgeCalinPetruta George-Calin GeorgeCalin Data 16 martie 2018 13:29:14
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.96 kb
#include <fstream>
#include <vector>
#define mod 666013
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");

vector <int> g[mod];
vector <int>::iterator it;

vector <int>::iterator gaseste(int x)
{
    int md=x%mod;
    for(it=g[md].begin();it<g[md].end();it++)
        if(*it==x)
            return it;
    return g[md].end();
}

void adauga(int x)
{
    int md=x%mod;
    if(gaseste(x)==g[md].end())
        g[md].push_back(x);
}

void sterge(int x)
{
    int md=x%mod;
    vector <int>::iterator ot=gaseste(x);
    if(ot!=g[md].end())
        g[md].erase(ot);
}

int main()
{
    int n,val,x;
    fin>>n;
    for(int i=1;i<=n;i++)
    {
        fin>>val>>x;
        if(val==1)
            adauga(x);
        if(val==2)
            sterge(x);
        if(val==3)
            if(gaseste(x)!=g[x%mod].end())
                fout<<1<<"\n";
            else
                fout<<0<<"\n";
    }
    return 0;
}