Cod sursa(job #1227552)

Utilizator remus88Neatu Remus Mihai remus88 Data 10 septembrie 2014 20:16:42
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.95 kb
#include<fstream>
#include<vector>
#define MOD 5007

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

int n,tip,x;
vector <int> H[100100];

int find(int x)
{
    int L=x%MOD;
    vector <int>::iterator it;
    for (it=H[L].begin(); it!=H[L].end(); ++it)
        if (*it==x) return 1;
    return 0;
}

void add(int x)
{
    int L=x%MOD;
    if (find(x)==0) H[L].push_back(x);
}

void del(int x)
{
    int L=x%MOD;
    vector <int>::iterator it;
    for ( it=H[L].begin(); it!=H[L].end(); ++it)
        if (x==*it)
        {
            H[L].erase(it);
            return;
        }
}

int main()
{
    f>>n;
    for (int i=1; i<=n; ++i)
        {
            f>>tip>>x;
            if (tip==1) add(x);
            if (tip==2) del(x);
            if (tip==3 && find(x)==0) g<<0<<'\n';
            else if (tip==3 && find(x)==1) g<<1<<'\n';
        }

    f.close(); g.close();
    return 0;
}