Cod sursa(job #1863781)

Utilizator alexsandulescuSandulescu Alexandru alexsandulescu Data 31 ianuarie 2017 10:45:04
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.83 kb
#include <bits/stdc++.h>
#define MOD 666013

using namespace std;

ifstream f ("hashuri.in");
ofstream g ("hashuri.out");

int N, p, x, c;
vector<int> A[MOD];
vector<int>::iterator it;

vector<int>::iterator v_search(int x) {
    for(it = A[c].begin(); it != A[c].end(); it++) if(*it == x) return it;
    return it;
}
void v_insert(int x) {
    if(it == A[c].end()) A[c].push_back(x);
}

void v_erase(int x) {
    if(it != A[c].end()) A[c].erase(it);
}

void v_write(int x) {
    if(it == A[c].end()) g << "0\n";
    else                 g << "1\n";
}
int main()
{
    f >> N;
    for(int i = 1; i <= N; i++) {
        f >> p >> x;
        c = x % MOD;
        it = v_search(x);
        if(p == 1)      v_insert(x);
        else if(p == 2) v_erase(x);
        else if(p == 3) v_write(x);
    }
    return 0;
}