Cod sursa(job #2783448)

Utilizator andreipirjol5Andrei Pirjol andreipirjol5 Data 14 octombrie 2021 14:48:26
Problema Hashuri Scor 30
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.99 kb
#define N 1000000
#include <iostream>

using namespace std;
FILE *fin, *fout ;
int v[N + 5], k ;
void operatia1 (int x, int &k)
{
    v[++k] = x ;
}
void operatia2 (int x, int &k)
{
    for(int j = 1 ; j <= k ; j++)
        if(v[j] == x)
        {
            for(int z = j + 1 ; z <= k ; z++)
                v[z - 1] = v[z] ;
            k--;
            break ;
        }
}
bool operatia3 (int x, int &k)
{
    for(int j = 1 ; j <= k ; j++)
        if(v[j] == x)
            return 1 ;
    return 0 ;
}
int main()
{
    fin = fopen("hashuri.in", "r") ;
    fout = fopen("hashuri.out", "w") ;
    int n ;
    fscanf(fin, "%d", &n) ;
    for(int i = 1 ; i <= n ; i++)
    {
        int op, x ;
        fscanf(fin, "%d%d", &op, &x) ;
        if(op == 1)
            operatia1(x, k) ;
        if(op == 2)
            operatia2(x, k) ;
        if(op == 3)
            fprintf(fout , "%d\n" , operatia3(x, k)) ;
    }
    fclose(fin) ;
    fclose(fout) ;
    return 0 ;
}