Cod sursa(job #2254516)

Utilizator tomaionutIDorando tomaionut Data 5 octombrie 2018 14:59:55
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.97 kb
#include <bits/stdc++.h>
#define p 123457

using namespace std;
vector <int> h[p];
void add(int x)
{
    int r;
    r=x%p;
    for (auto w : h[r])
    if (w==x) return ;
    h[r].push_back(x);
}
void sterge(int x)
{
    int r,l,i;
    r=x%p;
    l=h[r].size();
    for (i=0; i<l; i++)
        if (x==h[r][i])
    {
        h[r][i]=h[r][l-1];
        h[r].pop_back();
        return;
    }
}
int cauta(int x)
{
    int r;
    r=x%p;
    for (auto v: h[r])
        if (v==x)
        return 1;
    return 0;
}
int main()
{
   int n,i,op,x;
   ifstream fin("hashuri.in");
   ofstream fout("hashuri.out");
   fin >> n;
   for (i=1; i<=n; i++)
   {
      fin >> op >> x;
       {
           if (op==1)
           {
              add(x);
           }
           else
        if (op==2)
        {
            sterge(x);
        }
            else
        {

            fout<< cauta(x) << "\n";
        }
       }
   }
    return 0;
}