Cod sursa(job #828814)

Utilizator ephgstefana gal ephg Data 4 decembrie 2012 14:59:58
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.77 kb
#include<cstdio>
#include<vector>
#define mod 666013
using namespace std;
vector<int>h[mod+5];
#define it vector<int>::iterator
bool find(int x){
    for(it i=h[x%mod].begin();i!=h[x%mod].end();++i)if(*i==x)return 1;
    return 0;
}
void scoate(int x){
    for(it i=h[x%mod].begin();i!=h[x%mod].end();++i)if(*i==x){
        h[x%mod].erase(i);
        break;
    }
}
int main (){
    int n,i,x,op;
    freopen("hashuri.in","r",stdin);
    freopen("hashuri.out","w",stdout);
    scanf("%d",&n);
    for(i=1;i<=n;++i){
        scanf("%d %d",&op,&x);
        if(op==1)if(!find(x))h[x%mod].push_back(x);
        if(op==2)if(find(x))scoate(x);
        if(op==3){
            if(find(x))printf("1\n");
            else printf("0\n");
        }
    }
    return 0;
}