#588
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 | #40827889 | Utilizator | |
Fișier | dijkstra.cpp | Dimensiune | 1.10 KB |
Data încărcării | 24 Decembrie 2022, 11:29 | Scor / rezultat | Eroare de compilare |
dijkstra.cpp:9:59: error: wrong number of template arguments (0, should be 1) priority_queue<pair<int,int>,vector<pair<int,int>>,greater<>>q; ^ In file included from /usr/include/c++/4.8/queue:63:0, from dijkstra.cpp:1: /usr/include/c++/4.8/bits/stl_function.h:222:12: error: provided for 'template<class _Tp> struct std::greater' struct greater : public binary_function<_Tp, _Tp, bool> ^ dijkstra.cpp:9:60: error: template argument 3 is invalid priority_queue<pair<int,int>,vector<pair<int,int>>,greater<>>q; ^ dijkstra.cpp:9:63: error: invalid type in declaration before ';' token priority_queue<pair<int,int>,vector<pair<int,int>>,greater<>>q; ^ dijkstra.cpp: In function 'int main()': dijkstra.cpp:24:7: error: request for member 'push' in 'q', which is of non-class type 'int' q.push({0,p}); ^ dijkstra.cpp:25:14: error: request for member 'empty' in 'q', which is of non-class type 'int' while(!q.empty()){ ^ dijkstra.cpp:26:27: error: request for member 'top' in 'q', which is of non-class type 'int' pair<int,int> acum=q.top(); ^ dijkstra.cpp:27:8: error: request for member 'pop' in 'q', which is of non-class type 'int' q.pop(); ^ dijkstra.cpp:36:15: error: request for member 'push' in 'q', which is of non-class type 'int' q.push({distMin[x.first],x.first}); ^ dijkstra.cpp:40:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i=1;i<distMin.size();i++){ ^
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ă.