Cod sursa(job #3266751)

Utilizator tomavladnicolae@gmail.comTomavlad [email protected] Data 10 ianuarie 2025 10:19:06
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.93 kb
#include <bits/stdc++.h>
#define p 666013

using namespace std;

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

int n, op,q;
vector <int> a[p];
void Add(int x)
{
    int i;
    int r = x % p;
    for (i = 0; i < a[r].size(); i++)
        if (a[r][i] == x)
        return;
    a[r].push_back(x);
}

void Delete(int x)
{
    int i,r = x % p;
    for (i = 0; i < a[r].size(); i++)
        if (a[r][i] == x)
        {
            a[r][i] = a[r][a[r].size() - 1];
            a[r].pop_back();
        }
}
int Find(int x)
{
    int i, r = x % p;
    for (i = 0; i < a[r].size(); i++)
        if (a[r][i] == x)
        return 1;
    return 0;
}
int main()
{
    int i, x;
    fin >> q;
    while (q--)
    {
        fin >> op >> x;
        if (op == 1)
            Add(x);
        else if (op == 2)
            Delete(x);
        else
            fout << Find(x) << "\n";
    }
    return 0;
}