Cod sursa(job #1060896)

Utilizator gerd13David Gergely gerd13 Data 18 decembrie 2013 21:16:02
Problema Hashuri Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.14 kb
#include <fstream>
#define NMAX 1000005

using namespace std;

ifstream cin("hashuri.in") ;
ofstream cout("hashuri.out") ;


int N, M[NMAX], sz;

inline int find_value(int x){
for(int i = 0 ; i <= sz; ++ i)
if(M[i] == x)
    return i ;
 return -1 ;
}

inline void insert_value(int x){
    if(find_value(x) == -1)
        M[++ sz] = x ;
}

inline void erase_value(int x) {
int p = find_value(x) ;
if(p == -1)
    return ;
for(int i = p ; i < sz - 1; ++ i)

    M[i] = M[i+1] ;
    --sz ;

}
int main()
{
    int op, X;
    cin >> N ;

    for(int i = 1; i <= N; ++ i)
    {
        cin >> op >> X ;
        if(op == 1)
        {
            //inseram o valoare.
            insert_value(X) ;
            continue ;

        }
        else if(op == 2)
        {
            erase_value(X);
            continue ;
            //stergem o valoare
        }
        else if(op == 3)
        {
            //cautam o valoare
            if(find_value(X) != -1)
        cout << 1 << ' ';
       else cout << 0  << ' ';

        }
continue ;
        }


    cin.close();
    cout.close();
    return 0;
}