Detalii evaluare #58394649

Rezumat problemă

#4229

Bujorel s-a apucat de pomicultură şi a însămânţat un arbore (graf conex aciclic) cu N noduri, fiecare nod având o culoare dată dintr-un interval [1, K]. Acum, după ce arborele a crescut, el doreşte să ştie, pentru fiecare culoare, suma distanţelor dintre toate perechile de noduri ale arborelui ce au culoarea respectivă. Distanţa dintre două noduri se defineşte ca fiind numărul de muchii de pe drumul dintre cele două noduri. Deoarece Bujorel a folosit foarte mult îngrăşământ la plantarea arborelui, acesta a crescut foarte mult şi voi trebuie să scrieţi un program care calculează suma distanţelor dintre nodurile cu aceeaşi culoare.

Lot Resita 2012
Consola Pracsiu Dan (dnprx) Andrei Ciocan, Andrei Parvu concurs

Detalii

Problema kdist Operații I/O tastatură/ecran
Limita timp 1 secunde Limita memorie Total: 128 MB / Stivă 64 MB
Id soluție #58394649 Utilizator Ciorne i (Joergen)
Fișier kdist.cpp Dimensiune 4.62 KB
Data încărcării 01 Iunie 2025, 12:17 Scor/rezultat Eroare de compilare

Evaluare

Mesaj compilare

kdist.cpp:4:1: error: 'vector' does not name a type
 vector<int> g[MAXN+1];

 ^
kdist.cpp:13:1: error: 'unordered_map' does not name a type
 unordered_map<int, pair<long long,long long>> mp[MAXN+1];

 ^
kdist.cpp: In function 'void dfs_size(int, int)':
kdist.cpp:18:16: error: 'g' was not declared in this scope
     for(int v: g[u]) {

                ^
kdist.cpp: In function 'void dfs_dsu(int, int)':
kdist.cpp:32:16: error: 'g' was not declared in this scope
     for(int v: g[u]) {

                ^
kdist.cpp:40:16: error: 'g' was not declared in this scope
     for(int v: g[u]) {

                ^
kdist.cpp:49:9: error: 'mp' was not declared in this scope
         mp[u].swap(mp[bigChild]);

         ^
kdist.cpp:54:16: error: 'g' was not declared in this scope
     for(int v: g[u]) {

                ^
kdist.cpp:57:24: error: 'mp' was not declared in this scope
         for(auto &it : mp[v]) {

                        ^
kdist.cpp:81:9: error: 'mp' was not declared in this scope
         mp[v].clear();

         ^
kdist.cpp:86:18: error: 'mp' was not declared in this scope
     auto it_c0 = mp[u].find(c0);

                  ^
kdist.cpp: In function 'int main()':
kdist.cpp:104:5: error: 'ios' has not been declared
     ios::sync_with_stdio(false);

     ^
kdist.cpp:105:5: error: 'cin' was not declared in this scope
     cin.tie(nullptr);

     ^
kdist.cpp:109:9: error: 'g' was not declared in this scope
         g[i].clear();

         ^
kdist.cpp:110:9: error: 'mp' was not declared in this scope
         mp[i].clear();

         ^
kdist.cpp:115:9: error: 'g' was not declared in this scope
         g[x].push_back(y);

         ^
kdist.cpp:129:9: error: 'cout' was not declared in this scope
         cout << ans[c] << "\n";

         ^

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 kdist 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!