Cod sursa(job #1199712)

Utilizator azkabancont-vechi azkaban Data 20 iunie 2014 13:05:59
Problema Hashuri Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 1.84 kb
#include <fstream>
using namespace std;
ifstream cin("hashuri.in");
ofstream cout("hashuri.out");

typedef struct celula {
                       long long info;
                       celula* next;
                       } * lista;    
                       
const long MODULO=66013;

void add(long long nod, lista &p)
{
 lista r=new celula;
 r->info=nod;
 r->next=p;
 p=r;
}

long long  n,i,op,var,ok;
lista Hash[MODULO+2],r;
int main()
{
    cin>>n;
    for (i=1;i<=n;++i) {
                        cin>>op>>var;
                        if (op==1) add(var,Hash[var%MODULO]);
                        if (op==2) {
                                   r=Hash[var%MODULO];
                                   while(r){
                                             if (r->info==var) {
                                                                delete r;
                                                                break;
                                                               }
                                             r=r->next;
                                           }
                                   }
                        if (op==3) {
                                    r=Hash[var%MODULO];
                                    ok=0;
                                    while(r){
                                             if (r->info==var) {
                                                                ok=1;
                                                                break;
                                                                }
                                             r=r->next;
                                             }
                                    cout<<ok<<"\n";
                                     }
                    }                    
return 0;
}