Cod sursa(job #2623574)

Utilizator anamaria2602Avram Ana Maria anamaria2602 Data 3 iunie 2020 14:07:15
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.21 kb
#include <iostream>
#include <string>
#include <cstring>
#include <algorithm>
#include <fstream>
#define MAXX 1000005
#define MAXX1 1001
#define MAXX2 20
#include <vector>
using namespace std;

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

vector <int> V[MAXX];
inline vector<int>::iterator caut(int x,int y)
{
    vector<int>::iterator i;
    for(i=V[y].begin(); i!=V[y].end(); i++)
        if(*i==x)
            return i;
    return V[y].end();
}
inline void adaug(int x,int y)
{
    if(caut(x,y)==V[y].end())
        V[y].push_back(x);
}
inline void elimin(int x,int y)
{
    vector<int>::iterator i;
    i = caut(x,y);
    if(i!=V[y].end())
        V[y].erase(i);
}
int N,nr,cn,Gasit,val,x;
int main()
{
    f >> N;
    for ( int i=1; i<=N; i++ )
    {
        f >> cn >> nr;
        x = nr%MAXX;
        if ( cn == 1)
            adaug(nr,x);
        else if ( cn == 2 )
            elimin(nr,x);
        else if( cn == 3 )
        {
            Gasit = 0 ;
            if ( caut(nr,x)!=V[x].end() )
            {
                g << "1\n" ;
                Gasit = 1;
            }
            if(Gasit==0)
                g << "0\n" ;
        }
    }
    return 0;
}