Cod sursa(job #3264038)

Utilizator v4nes5aBulacu Gabriela-Vanessa v4nes5a Data 17 decembrie 2024 19:51:04
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.04 kb
#include <bits/stdc++.h>
using namespace std;

ifstream fin("hashuri.in");
ofstream fout("hashuri.out");

int n;

const int MOD = 666013;
vector<int> HASH[MOD];

void insert_hash(int x)
{
    int r = x % MOD;
    for(int i = 0; i < (int) HASH[r].size(); ++i)
        if(HASH[r][i] == x)
            return;
    HASH[r].push_back(x);
}

void erase_hash(int x)
{
    int r = x % MOD;
    for(int i = 0; i < (int) HASH[r].size(); ++i)
        if(HASH[r][i] == x)
        {
            HASH[r].erase(HASH[r].begin() + i);
            return;
        }
}

int find_hash(int x)
{
    int r = x % MOD;
    for(int i = 0; i < (int) HASH[r].size(); ++i)
        if(HASH[r][i] == x)
            return 1;
    return 0;
}

int main()
{
    fin >> n;
    for(int i = 1; i <= n; ++i)
    {
        int op, x;
        int ok = 1;
        fin >> op >> x;
        if(op == 1)
            insert_hash(x);
        if(op == 2)
            erase_hash(x);
        if(op == 3)
            fout << find_hash(x) << "\n";
    }
}