Afişează mesaje
Pagini: [1]
1  infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / Răspuns: 057 Diametrul unui arbore : Iunie 15, 2015, 09:04:00
Salut,

Uitandu-ma peste solutia recomandata de 100pct, am observat urmatorul lucru:

Cod:
    #define MAX_N 1000001
    ...
    int contor[MAX_N],viz[MAX_N];
    ...
    memset(contor,0,MAX_N);
    memset(viz,0,MAX_N);

1. al 3-lea argument al lui memset primeste un numar de bytes nu de elemente. In acest caz sizeof(int) * MAX_N ar fi fost corect. Altfel se intializeaza doar o parte din vector.

2. MAX_N e de 10 ori mai mare decat dimensiunea maxima a inputului, ceea ce inseamna ca desi memset-ul primeste argumentul gresit, totusi initializeaza o bucata suficient de mare din array incat sa functioneze pentru problema asta, sizeof(int) fiind cel mai probabil 4.
Pagini: [1]
Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines