Cod sursa(job #3232028)

Utilizator StefanIordache2007Iordache Stefan-Cristian StefanIordache2007 Data 28 mai 2024 17:58:44
Problema Hashuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.02 kb
#include <iostream>
#include <fstream>
#define MOD 666013
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
struct nod
{
    int info;
    nod *urm;
}*H[MOD],*p;

void sterge(int x)
{
    int ind = x % MOD;
    nod *p, *u;
    p=u=H[ind];
    if(H[ind])
    {
        if(H[ind]->info==x) H[ind]=H[ind]->urm;
        else
        {
            while(p && p->info != x)
            {
                u=p;
                p=p->urm;
            }
             u->urm=p->urm;
        }
    }
}

void scrie(int x)
{
    int ind=x%MOD;
    nod *p = H[ind];
    while(p)
    {
        if(p->info==x)
            fout<<1 << '\n';
        p=p->urm;
    }
    fout << 0 << '\n';
}

int main()
{
    int n,op,x;
    fin>>n;
    for(int i=1;i<=n;i++)
    {
        fin>>op>>x;
        int ind=x%MOD;
        if(op==1)
        {
            nod *p=new nod;
            p->info=x;
            p->urm=H[ind];
            H[ind]=p;
        }
        else if(op==2) sterge(x);
        else if(op==3) scrie(x);
    }
    return 0;
}