Cod sursa(job #2672983)

Utilizator danin01Nastase Daniel danin01 Data 15 noiembrie 2020 16:29:38
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.32 kb
#include <stdio.h>
#include <fstream>
#include <vector>
#define MOD 666013

using namespace std;

ifstream f("hashuri.in");
ofstream g("hashuri.out");

int n;
vector<int> v[MOD];

void insert_element(int x)
{

    int list = x % MOD;bool exist=0;
    vector<int>::iterator it;
    for(it=v[list].begin();it!=v[list].end()&&!exist;++it)
    {
        if((*it)==x)
            exist = true;
    }
    if(!exist)
        v[list].push_back(x);

}

void delete_element(int x)
{
    int l = x % MOD;bool exist=1;
    vector<int>::iterator it;
    for(it=v[l].begin();it!=v[l].end()&&exist;++it)
    {
        if((*it)==x)
        {
            exist = false;
            v[l].erase(it);
        }
    }
}

int find_element(int x)
{

    int list = x % MOD;bool searching = true;
    vector<int>::iterator it;
    for(it=v[list].begin();it!=v[list].end();++it)
    {
        if((*it)==x)
        {
            return 1;
        }
    }
    return 0;

}

int main()
{
    f>>n;
    for(;n;--n)
    {

        int op,x;
        f>>op>>x;

        if(op==1)
        {
            insert_element(x);
            continue;
        }
        if(op==2)
        {
            delete_element(x);
            continue;
        }

        g<<find_element(x)<<'\n';

    }
    return 0;
}