Cod sursa(job #3243260)

Utilizator vladrochianVlad Rochian vladrochian Data 16 septembrie 2024 19:43:51
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1 kb
#include <algorithm>
#include <fstream>
#include <vector>

using namespace std;

const int MOD = 666013;

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

vector<int> groupMembers[MOD];

bool check(int value) {
    int group = value % MOD;
    return count(groupMembers[group].begin(), groupMembers[group].end(), value) > 0;
}

void insert(int value) {
    if (!check(value)) {
        int group = value % MOD;
        groupMembers[group].push_back(value);
    }
}

void erase(int value) {
    int group = value % MOD;
    auto it = find(groupMembers[group].begin(), groupMembers[group].end(), value);
    if (it != groupMembers[group].end()) {
        groupMembers[group].erase(it);
    }
}

int main() {
    int opCount;
    fin >> opCount;
    while (opCount--) {
        int op, value;
        fin >> op >> value;
        if (op == 1) {
            insert(value);
        } else if (op == 2) {
            erase(value);
        } else {
            fout << check(value) << "\n";
        }
    }
    return 0;
}