Cod sursa(job #2372092)

Utilizator Vlad3108Tir Vlad Ioan Vlad3108 Data 6 martie 2019 21:24:09
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.88 kb
#include <bits/stdc++.h>
using namespace std;
#define MOD 666013
vector<int> H[MOD];
int key(int val){
    return val%MOD;
}
bool find(int val){
    int k=key(val);
    for(auto it : H[k])
        if(it==val)
            return 1;
    return 0;
}
void insert(int val){
    if(find(val))
        return ;
    H[key(val)].push_back(val);
}
void erase(int val){
    int k=key(val);
    for(auto &it : H[k])
        if(it==val){
            it=H[k].back();
            H[k].pop_back();
            return ;
        }
}
int main(){
    freopen("hashuri.in","r",stdin);
    freopen("hashuri.out","w",stdout);
    int n;
    scanf("%d",&n);
    for(int i=1;i<=n;++i){
        int op,x;
        scanf("%d %d",&op,&x);
        if(op==1)
            insert(x);
        else if(op==2)
            erase(x);
        else printf("%d\n",find(x));
    }
    return 0;
}