Cod sursa(job #1757125)

Utilizator AhileGigel Frone Ahile Data 14 septembrie 2016 16:14:49
Problema Hashuri Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 1.21 kb
#include<bits/stdc++.h>
using namespace std;
#define FIN "hashuri.in"
#define out g

ifstream f ("hashuri.in");
ofstream g ("hashuri.out");

const int MOD = 666013;
vector<int>v[MOD];
int n;
int comanda;
int x;


int inserth(int x) {

    int key = x % MOD;

    for(int i = 0; i < v[key].size(); ++i) {
        if(v[key][i] == x) {
            return 0;
        }
    }
    v[key].push_back(x);

}

int deleteh(int x) {

    int key = x % MOD;

    for(int i = 0; i < v[key].size(); ++i) {
        if(v[key][i] == x) {
            v[key].erase(v[key].begin() + i);
            return 0;
        }
    }

}

int findh(int x) {

    int key = x % MOD;
    for(int i = 0; i < v[key].size(); ++i) {
         if(v[key][i] == x) {
            out << "1" << endl;
            return 0;
        }
    }
    out << "0" << endl;
}

int main() {

    freopen(FIN, "r",stdin);
    scanf("%d", &n);
    for(int i = 1; i <= n; ++i) {
        scanf("%d", &comanda);
        scanf("%d", &x);
        if(comanda == 1) {
            inserth(x);
        }
        if(comanda == 2) {
            deleteh(x);
        }
        if(comanda == 3) {
            findh(x);
        }
    }

}