Cod sursa(job #2625597)

Utilizator StefanaArinaStefana Arina Tabusca StefanaArina Data 6 iunie 2020 01:21:41
Problema Hashuri Scor 100
Compilator cpp-32 Status done
Runda Arhiva educationala Marime 1.11 kb
#include <iostream>
#include<fstream>
#include<vector>
#define mod 168457

using namespace std;

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

vector<int>V[mod];
 
int search(int n)
{
    int i = n % mod;
    vector<int>::iterator it;
    for(it = V[i].begin(); it != V[i].end(); ++ it)
    {
        if(*it == n)
            return 1;
    }
    return 0;
}
 
int add(int n)
{
    int i = n % mod;
    if(!search(n))
        V[i].push_back(n);
}
 
void del(int n)
{
    int i = n % mod;
    vector<int>::iterator it;
    for(it = V[i].begin(); it != V[i].end(); it ++)
    {
        if(*it == n)
            {
            V[n % mod].erase(it);
            break;
            }
    }
 
}
int main()
{
    int n, op, nr;
    f >> n;
    for(int i = 0; i < n; i ++)
    {
        f >> op >> nr;
        switch(op)
        {
            case 1:
                 add(nr);
                break;
            case 2:
                if (search(nr)) del(nr);
                break;
            case 3:
                g << search(nr) << '\n';
        }
    }
    return 0;
}