Cod sursa(job #1782027)

Utilizator LizaSzabo Liza Liza Data 17 octombrie 2016 18:43:52
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.84 kb
#include <fstream>
#include <vector>
using namespace std;

ifstream fin("hashuri.in");
ofstream fout("hashuri.out");

const int MOD = 666013;
int N;
vector <int> V[MOD];

int Find(int Value)
{
  int List = Value % MOD;
  for(int i = 0; i < (int)V[List].size(); i++)
    if(V[List][i]==Value)
      return i;
  return -1;
}

void Insert(int Value)
{
  int List = Value % MOD;

  if(Find(Value) == -1)
    V[List].push_back(Value);
}

void Delete(int Value)
{
  int List = Value % MOD;
  int Pos = Find(Value);

  if(Pos != -1)
    V[List].erase(V[List].begin() + Pos);
}

int main()
{
    fin>>N;
    while(N--)
    {
      int op,x;
      fin>>op>>x;
      if(op == 1)
        Insert(x);
      if(op == 2)
        Delete(x);
      if(op == 3)
        fout << (Find(x) != -1) << "\n";
    }
    return 0;
}