Cod sursa(job #2718433)

Utilizator BaraianTudorBaraian Tudor Stefan BaraianTudor Data 8 martie 2021 18:53:07
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.94 kb
#include <iostream>
#include <fstream>
#include <vector>
#define p 999983
using namespace std;
ifstream in("hashuri.in");
ofstream out("hashuri.out");
vector <int> h[999983];
bool cauta(int a)
{
    for(auto i:h[a%p])
    {
        if(i==a)return 1;
    }
    return 0;
}
void adauga(int a)
{
    if(cauta(a))return;
    h[a%p].push_back(a);
}
void sterge(int a)
{
    if(!cauta(a))return;
    for(auto it=h[a%p].begin();it<h[a%p].end();it++)
    {
        if(*it==a)
        {
            h[a%p].erase(it);
            return;
        }
    }
}
int n,cod,x;
int main()
{
    in>>n;
    for(int i=1;i<=n;i++)
    {
        in>>cod>>x;
        switch (cod)
        {
            case 1:
                adauga(x);
            break;
            case 2:
                sterge(x);
            break;
            case 3:
                out<<cauta(x)<<'\n';
            break;
        }
    }
    return 0;
}