Cod sursa(job #1048019)

Utilizator SieRRa95FMI Stratulat Madalin-Gabriel SieRRa95 Data 5 decembrie 2013 09:45:21
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 1.04 kb
#include<fstream>
#include<iostream>
#include <vector>
using namespace std;

#define prime 666013

vector<int>H[prime];

int cauta(vector<int>H[prime],int val){
    int rest=val%prime;
    for(int i=0;i<H[rest].size();i++)
        if(H[rest][i]==val)
            return i;
return -1;}

void insert(vector<int>H[prime],int val){
    if(cauta(H,val)>=0){
        return;
    }
    else
        H[val%prime].push_back(val);

}

void sterge(vector<int>H[prime],int val){
    int poz=cauta(H,val);
    if(poz==-1)
        return;
    int rest=val%prime;
    H[rest][poz]=H[rest].back();
    H[rest].pop_back();
}

int main(){int n,i,x,y;
ifstream f("hashuri.in");
ofstream g("hashuri.out");

    f>>n;
    for(i=1;i<=n;i++)
    {
        f>>x>>y;
        if(x==1)
            insert(H,y);
        if(x==2)
            sterge(H,y);

        if(x==3){
            if(cauta(H,y)==-1)
                g<<"0\n";
            else
                g<<"1\n";
        }
    }
    f.close();
    g.close();
return 0;}