Cod sursa(job #2795114)

Utilizator SeracovanuEdwardSeracovanu Edward SeracovanuEdward Data 5 noiembrie 2021 23:23:40
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.9 kb
#include <bits/stdc++.h>
#define MOD 666013
using namespace std;
int n;
vector <int> A[MOD];
inline vector <int> ::iterator find_value(int x){
int lista=x%MOD;
vector <int>::iterator it;
for(it=A[lista].begin();it!=A[lista].end();++it)
    if(*it==x)
        return it;
return A[lista].end();
}
inline void insert_value(int x){
int lista=x%MOD;
if(find_value(x)==A[lista].end())
    A[lista].push_back(x);
}
inline void erase_value(int x){
int lista=x%MOD;
vector <int> :: iterator it=find_value(x);
if(it!=A[lista].end())
    A[lista].erase(it);
}
int main()
{
    freopen("hashuri.in","r",stdin);
    freopen("hashuri.out","w",stdout);
    scanf("%d",&n);
    int x,y;
    for(int i=1;i<=n;i++){
        scanf("%d%d",&x,&y);
        if(x==1)
        insert_value(y);
        else if(x==2)erase_value(y);
                else printf("%d\n",find_value(y)!=A[y%MOD].end());
    }
}