Cod sursa(job #1559718)

Utilizator bogdanboboc97Bogdan Boboc bogdanboboc97 Data 31 decembrie 2015 14:51:59
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.95 kb
#include <bits/stdc++.h>
#define pb push_back
#define mp make_pair
#define int64 long long
#define INF numeric_limits<int>::max();
using namespace std;
ifstream in("hashuri.in");
ofstream out("hashuri.out");
const int mod=666013;
vector< vector<int> > h(mod);
vector<int>::iterator cauta(int x)
{
    int aux=x%mod;
    for(vector<int>::iterator i=h[aux].begin();i!=h[aux].end();i++)
        if(*i==x)
        return i;
    return h[aux].end();
}
void insereaza(int x)
{
    int aux=x%mod;
    if(cauta(x)==h[aux].end())
        h[aux].pb(x);
}
void sterge(int x)
{
    int aux=x%mod;
    vector<int>::iterator i=cauta(x);
    if(i!=h[aux].end())
        h[aux].erase(i);
}
int main()
{
    int q;
    for(in>>q;q;q--)
    {
        int t,x;
        in>>t>>x;
        if(t==1)
            insereaza(x);
        else if(t==2)
            sterge(x);
        else out<<(cauta(x)!=h[x%mod].end())<<'\n';
    }
    return 0;
}