Cod sursa(job #2812602)

Utilizator florinrafiliuRafiliu Florin florinrafiliu Data 4 decembrie 2021 19:53:22
Problema Hashuri Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.85 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

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

const int mod = 7e5 + 1;

vector <int> h[mod+5];

int get(int rest, int x) {
    for(int i = 0; i < h[rest].size(); ++i)
        if(h[rest][i] == x)
            return 1;
    return -1;
}

int main()
{
    int n; fin >> n;
    for(int i = 1; i <= n; ++i) {
        int op, x; fin >> op >> x;
        int rest = x % mod;

        if(op == 1) {
            if(get(rest, x) == -1)
                h[rest].push_back(x);
        } else if(op == 2) {
            int i = get(rest, x);
            if(i >= 0) h[rest].erase(h[rest].begin()+i-1);
        } else {
            int i = get(x % mod, x);
            if(i != -1) fout << "1\n";
            else fout << "0\n";
        }
    }
    return 0;
}