Cod sursa(job #1047027)

Utilizator geo.cristinaOana Georgiana-Cristina geo.cristina Data 3 decembrie 2013 20:27:27
Problema Hashuri Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.96 kb
#include <iostream>
#include <vector>
#include <fstream>
#define prime 666013
#define mod val%prime

using namespace std;

vector<int>H[666013];
int n,x,op;

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

int cauta(int val)
{
    size_t  i;
    unsigned m=H[mod].size();
    for(i=0;i<m;i++)
      if(H[mod][i]==val)
        return i;
    return -1;
}

void inserare(int val)
{
    if(cauta(val)==-1)
      H[mod].push_back(val);
}

void stergere(int val)
{
    int cine=cauta(val);
    if(cine!=-1)
       H[mod].erase(H[mod].begin()+cine);
}

void gasit(int val)
{
    if(cauta(val)==-1)
      g<<'0';
    else
      g<<'1';
    g<<endl;
}

int main()
{
    f>>n;
    for(int i=1;i<=n;i++)
      {
          f>>op>>x;
          if(op==1)
             inserare(x);
          if(op==2)
             stergere(x);
          if(op==3)
             gasit(x);
      }
    f.close();
    g.close();

    return 0;
}