Cod sursa(job #2449493)

Utilizator dangerosuclujDan Gerosu dangerosucluj Data 19 august 2019 22:28:21
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.06 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
using namespace std;

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

const int MAXN = 1000005;
const int MOD = 666013;
int n;
vector<int> v[MOD];

int find(int k) {
    int r = k % MOD;
    for (int i = 0; i < v[r].size(); ++i) {
        if (v[r][i] == k) {
            return i;
        }
    }
    return -1;
}

int main() {

    fin >> n;
    for (int i = 1; i <= n; ++i) {
        int a, b;
        fin >> a >> b;
        int r = b % MOD;
        if (a == 1) {
            if (find(b) == -1) {
                v[r].push_back(b);
            }
        }
        else if (a == 2) {
            int poz = find(b);
            if (poz != -1) {
                swap(v[r][poz], v[r][v[r].size() - 1]);
                v[r].pop_back();
            }
        }
        else {
            int poz = find(b);
            if (poz == -1) {
                fout << '0';
            }
            else {
                fout << '1';
            }
            fout << '\n';
        }
    }

    return 0;
}