Cod sursa(job #2677896)

Utilizator RaduNRadu Negovan RaduN Data 27 noiembrie 2020 18:12:47
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.08 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
vector<int>v[301013+2];
long long modulo (int a) {
    return a%301013;
}
void put(int a) {
    int p=modulo(a);
    bool real=0;
    for (int i=0; i<v[p].size(); i++) {
        if (v[p][i]==a) {
            real=1;
            break;
        }
    }
    if (!real) {
        v[p].push_back(a);
    }
}
void pop(int a) {
    int p=modulo(a);
    for (int i=0; i<v[p].size(); i++) {
        if (v[p][i]==a) {
            swap(v[p][i], v[p][v[p].size()-1]);
            v[p].pop_back();
            break;
        }
    }
}
bool finder(int a) {
    int p=modulo(a);
    for (int i=0; i<v[p].size(); i++) {
        if (v[p][i]==a) {
            return 1;
        }
    }
    return 0;
}
int main() {
     int n;
    f>>n;
    for (int i=0; i<n; i++) {
        int x, y;
        f>>x>>y;
        if (x==1) {
            put(y);
        } else if (x==2) {
            pop(y);
        } else {
            g<<finder(y)<<'\n';
        }
    }
    return 0;
}