Detalii evaluare #64747918

Rezumat problemă

Se dă un arbore binar care conține valori numere naturale. Să se determine diferența în valoare absolută a sumei valorilor memorate în subarborele stâng al rădăcinii și suma valorilor memorate în subarborele drept al rădăcinii.

Notă: pentru reprezentarea arborelui se recomandă alocarea statică, folosind tablouri.

Detalii

Problema DifSub Operații I/O difsub.in/difsub.out
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #64747918 Utilizator cristu andrei (andycristu)
Fișier difsub.cpp Dimensiune 900 B
Data încărcării 27 Mai 2026, 15:58 Scor/rezultat Eroare de compilare

Evaluare

Mesaj compilare

difsub.cpp: In function ‘void adunare_arbore(vectoras, long long int&)’:
difsub.cpp:18:18: error: invalid types ‘vectoras [1001][vectoras*]’ for array subscript
   18 |     s+= x.val + v[x.st].val + v[x.dr].val;
      |                  ^
difsub.cpp:18:32: error: invalid types ‘vectoras [1001][vectoras*]’ for array subscript
   18 |     s+= x.val + v[x.st].val + v[x.dr].val;
      |                                ^
difsub.cpp:19:22: error: could not convert ‘x.vectoras::st’ from ‘vectoras*’ to ‘vectoras’
   19 |     adunare_arbore(x.st, s);
      |                    ~~^~
      |                      |
      |                      vectoras*
difsub.cpp:20:22: error: request for member ‘dr’ in ‘s’, which is of non-class type ‘long long int’
   20 |     adunare_arbore(s.dr, s);
      |                      ^~
difsub.cpp: In function ‘int main()’:
difsub.cpp:31:13: error: base operand of ‘->’ has non-pointer type ‘vectoras’
   31 |         v[i]->st = st;
      |             ^~
difsub.cpp:32:19: error: expected unqualified-id before ‘=’ token
   32 |         v[i].dr-> = dr;
      |                   ^
difsub.cpp:44:27: error: could not convert ‘v[top].vectoras::st’ from ‘vectoras*’ to ‘vectoras’
   44 |     adunare_arbore(v[top].st, s_st);
      |                    ~~~~~~~^~
      |                           |
      |                           vectoras*
difsub.cpp:24:15: warning: unused variable ‘j’ [-Wunused-variable]
   24 |     int n, i, j, x, st, dr, top = 0;
      |               ^
difsub.cpp:25:25: warning: unused variable ‘s_dr’ [-Wunused-variable]
   25 |     long long s_st = 0, s_dr = 0;
      |                         ^~~~
difsub.cpp:42:15: warning: unused variable ‘s’ [-Wunused-variable]
   42 |     long long s = 0;
      |               ^

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema DifSub face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.

Du-te sus!