#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 | #62882258 | Utilizator | |
| Fișier | dijkstra.cpp | Dimensiune | 1.13 KB |
| Data încărcării | 05 Februarie 2026, 09:33 | Scor/rezultat | Eroare de compilare |
dijkstra.cpp: In function 'std::vector<int> dijkstra(std::vector<std::vector<std::pair<int, int> > >, int, int)': dijkstra.cpp:10:70: error: wrong number of template arguments (2, should be 1) priority_queue<pair<int,int>, vector<pair<int,int>>, greater<int,int>> q; ^ In file included from /usr/include/c++/4.8/string:48:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, 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:10:73: error: template argument 3 is invalid priority_queue<pair<int,int>, vector<pair<int,int>>, greater<int,int>> q; ^ dijkstra.cpp:10:77: error: invalid type in declaration before ';' token priority_queue<pair<int,int>, vector<pair<int,int>>, greater<int,int>> q; ^ dijkstra.cpp:11:7: error: request for member 'emplace' in 'q', which is of non-class type 'int' q.emplace(0,source); ^ dijkstra.cpp:14:14: error: request for member 'empty' in 'q', which is of non-class type 'int' while(!q.empty()){ ^ dijkstra.cpp:15:29: error: request for member 'front' in 'q', which is of non-class type 'int' pair<int,int> k = q.front(); ^ dijkstra.cpp:16:11: error: request for member 'pop' in 'q', which is of non-class type 'int' q.pop(); ^ dijkstra.cpp:26:19: error: request for member 'emplace' in 'q', which is of non-class type 'int' q.emplace(distances[v],v); ^
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ă.