#588
Dijkstra
Se dă un graf orientat ponderat – în care fiecare arc are asociat un cost, număr natural strict pozitiv, și un nod p
. Să se determine, folosind algoritmul lui Dijkstra, costul minim al drumului de la p
la fiecare nod al grafului.
Problema | Dijkstra | Operații I/O |
dijkstra.in /dijkstra.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #38678734 | Utilizator | |
Fișier | dijkstra.cpp | Dimensiune | 2.83 KB |
Data încărcării | 15 Octombrie 2022, 00:32 | Scor / rezultat | 0 puncte |
dijkstra.cpp: In function 'int main()': dijkstra.cpp:83:27: warning: the address of 'B' will always evaluate as 'true' [-Waddress] p = lmin(B,nod,p,b); // nodul dintre vecini cu l minim ^ dijkstra.cpp:51:27: warning: variable 'primul' set but not used [-Wunused-but-set-variable] int n, p, i, j, c, b, primul, anterior, as=1, bs=0; ^ dijkstra.cpp: In function 'int lmin(bool, graf*, int, int)': dijkstra.cpp:22:12: warning: 'R' may be used uninitialized in this function [-Wmaybe-uninitialized] return R; ^ dijkstra.cpp: In function 'int main()': dijkstra.cpp:56:12: warning: array subscript is above array bounds [-Warray-bounds] nod[101].nrvecini = {0}; ^ cc1plus: warning: iteration 99u invokes undefined behavior [-Waggressive-loop-optimizations] dijkstra.cpp:74:5: note: containing loop for( int i = 1; i <= 101 ; i++) ^ dijkstra.cpp:86:24: warning: 'R' may be used uninitialized in this function [-Wmaybe-uninitialized] for( b = 1 ; b <= nod[p].nrvecini ; b++ ){ ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | Raspuns gresit. | 20 | 0 | Exemplu | |
2 | 0 secunde | Raspuns gresit. | 40 | 0 | ||
3 | 0 secunde | Raspuns gresit. | 40 | 0 | ||
Punctaj total | 0 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Dijkstra 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ă.