#2042
Cu ocazia sărbătoririi marii victorii de la ONI2017, cei 10 Bistrițeni au pornit la drum cu scopul de a-și întemeia o țară. După multe dezbateri, aceștia s-au hotărât să o numească Zoomba. Și au mers ei ce au mers, până au ajuns într-un ținut pustiu, iar atunci, marele Zoli a spus: “Și aici să fie întemeiată Zoomba!” (La început, Zoomba nu are niciun oraș). Iulia are sarcina de a construi orașele, iar Maria va construi drumurile ce vor conecta orașele. Astfel, se disting următoarele evenimente:
1: Iulia construiește un nou oraș. Dacă ultimul oraș construit este orașul x, atunci noul oraș va fi x + 1 (Dacă nu există niciun oraș în acel moment, atunci noul oraș construit va fi 1).2 x y c: Maria propune construcția unui drum bidirecțional ce leagă orașul x de orașul y de cost c.3 x: Zoli se întreabă care este costul minim pentru a lega un număr maxim de orașe (folosind drumurile propuse de Maria) cu scopul construirii unui județ (un județ este o grupare de orașe în care se poate ajunge din orice oraș în orice alt oraș) ce conține orașul x.Scrieți un program care procesează M evenimente de tipurile precizate mai sus, și afișează în fișierul de ieșire rezultatele evenimentelor de tipul 3.
| Problema | episodul1 | Operații I/O |
episodul1.in/episodul1.out
|
|---|---|---|---|
| Limita timp | 0.15 secunde | Limita memorie |
Total: 16 MB
/
Stivă 8 MB
|
| Id soluție | #63384845 | Utilizator | |
| Fișier | episodul1.cpp | Dimensiune | 3.40 KB |
| Data încărcării | 01 Martie 2026, 11:09 | Scor/rezultat | Eroare de compilare |
episodul1.cpp:9:6: error: 'elem' does not name a type elem *start; ^ episodul1.cpp: In function 'void add_nod()': episodul1.cpp:25:9: error: request for member 'start' in 'aux', which is of pointer type 'head*' (maybe you meant to use '->' ?) aux.start = NULL; ^ episodul1.cpp:26:9: error: request for member 'next' in 'aux', which is of pointer type 'head*' (maybe you meant to use '->' ?) aux.next = NULL; ^ episodul1.cpp: In function 'void add_muchie(int, int, int)': episodul1.cpp:54:13: error: request for member 'nod' in 'newelem', which is of pointer type 'elem*' (maybe you meant to use '->' ?) newelem.nod = j; ^ episodul1.cpp:55:13: error: request for member 'cost' in 'newelem', which is of pointer type 'elem*' (maybe you meant to use '->' ?) newelem.cost = cost; ^ episodul1.cpp:56:13: error: request for member 'next' in 'newelem', which is of pointer type 'elem*' (maybe you meant to use '->' ?) newelem.next = NULL; ^ episodul1.cpp:58:16: error: 'struct head' has no member named 'start' if(head_i->start == NULL) { ^ episodul1.cpp:59:17: error: 'struct head' has no member named 'start' head_i->start = newelem; ^ episodul1.cpp:61:29: error: 'struct head' has no member named 'start' elem *aux = head_i->start; ^ episodul1.cpp:72:14: error: request for member 'nod' in 'newelem2', which is of pointer type 'elem*' (maybe you meant to use '->' ?) newelem2.nod = i; ^ episodul1.cpp:73:14: error: request for member 'cost' in 'newelem2', which is of pointer type 'elem*' (maybe you meant to use '->' ?) newelem2.cost = cost; ^ episodul1.cpp:74:14: error: request for member 'next' in 'newelem2', which is of pointer type 'elem*' (maybe you meant to use '->' ?) newelem2.next = NULL; ^ episodul1.cpp:76:16: error: 'struct head' has no member named 'start' if(head_j->start == NULL) { ^ episodul1.cpp:77:17: error: 'struct head' has no member named 'start' head_j->start = newelem; ^ episodul1.cpp:79:29: error: 'struct head' has no member named 'start' elem *aux = head_j->start; ^ episodul1.cpp: In function 'void addnod(minheap&, int)': episodul1.cpp:148:13: error: 'a' was not declared in this scope if(a[nod][i]!=0 && a[nod][i]!=INF && a[nod][i]<d[i]) ^ episodul1.cpp:148:40: error: 'INF' was not declared in this scope if(a[nod][i]!=0 && a[nod][i]!=INF && a[nod][i]<d[i]) ^ episodul1.cpp:148:57: error: 'd' was not declared in this scope if(a[nod][i]!=0 && a[nod][i]!=INF && a[nod][i]<d[i]) ^ episodul1.cpp:151:13: error: 't' was not declared in this scope t[i] = nod; ^ episodul1.cpp:159:6: error: 'd' was not declared in this scope d[nod] = 0; ^ episodul1.cpp: In function 'int APM_prim(int)': episodul1.cpp:165:9: error: 'd' was not declared in this scope d[i] = a[1][i]; ^ episodul1.cpp:165:16: error: 'a' was not declared in this scope d[i] = a[1][i]; ^ episodul1.cpp:166:24: error: 'INF' was not declared in this scope if (a[1][i] != INF && a[1][i] != 0) { ^ episodul1.cpp:167:13: error: 't' was not declared in this scope t[i] = 1; ^ episodul1.cpp:171:20: error: 'h' was not declared in this scope insert(h, dr); ^ episodul1.cpp:175:5: error: 't' was not declared in this scope t[1] = 0; ^ episodul1.cpp:182:26: error: 'h' was not declared in this scope dr = get_min(h); ^ episodul1.cpp:184:16: error: 'd' was not declared in this scope }while(d[dr.i] == 0); ^ episodul1.cpp:187:16: error: 'h' was not declared in this scope addnod(h, dr.i); ^ episodul1.cpp:189:1: warning: no return statement in function returning non-void [-Wreturn-type] } ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema episodul1 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
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ă.