Cod sursa(job #1701204)

Utilizator AntoniooMacovei Antonio Antonioo Data 12 mai 2016 14:16:30
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 1.1 kb
#include <stdio.h>
#include <vector>
#define MOD 666013
using namespace std;
vector <int> v[666013];

void insertX(int x) {
    int rest = x % MOD, i;
    for(i = 0; i < v[rest].size(); i++) {
        if(v[rest][i] == x)
            return;
    }
    v[rest].push_back(x);
}
void eraseX(int x) {
    int rest = x % MOD;
    if(v[rest].empty()) return;
    vector <int> ::iterator it;
    for(it = v[rest].begin(); it != v[rest].end(); it++) {
        if(*it == x) {
            v[rest].erase(it);
            return;
        }
    }
}
void searchX(int x) {
    int rest = x % MOD, i;
    for(i = 0; i < v[rest].size(); i++) {
        if(v[rest][i] == x) {
            printf("1\n");
            return;
        }
    }
    printf("0\n");
}
int main()
{
    freopen("hashuri.in","r",stdin);
    freopen("hashuri.out","w",stdout);
    int n, op, i, x;
    scanf("%d",&n);
    for(i=1;i<=n;i++) {
        scanf("%d%d",&op,&x);
        if(op == 1)
            insertX(x);
        if(op == 2)
            eraseX(x);
        if(op == 3)
            searchX(x);
    }
    return 0;
}