Cod sursa(job #1685121)

Utilizator gabib97Gabriel Boroghina gabib97 Data 11 aprilie 2016 15:22:38
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 1 kb
#include <stdio.h>
#include <vector>
#define w 733333
using namespace std;
int n,i,op,x,r;
vector<int> H[733334];

int find(int x)
{
    vector<int>::iterator it;
    for (it=H[r].begin();it!=H[r].end();++it)
        if (*it==x) return 1;
    return 0;
}
void insert(int x)
{
    if (!find(w)) H[r].push_back(x);
}
void remove(int x)
{
    vector<int>::iterator it;
    for (it=H[r].begin();it!=H[r].end();++it)
        if (*it==x)
        {
            H[r].erase(it);
            return;
        }
}

int main()
{
    freopen ("hashuri.in","r",stdin);
    freopen ("hashuri.out","w",stdout);
    scanf("%i",&n);
    while (n--)
    {
        scanf("%i%i",&op,&x);
        r=x%w;
        switch (op)
        {
        case 1:
            insert(x);
            break;

        case 2:
            remove(x);
            break;
        case 3:
            printf("%i\n",find(x));
            break;
        }
    }
    fclose(stdin);
    fclose(stdout);
    return 0;
}