#3446
Marian se află în galaxia OJI-2020 și este anul 11235. În această galaxie există N planete diferite și M canale bidirecţionale de transport de tipul (x, y, t) care îţi permit să te deplasezi de pe planeta x pe planeta y (sau invers) în t secunde.
Dar Marian este un adevărat inginer și, pentru că i se pare foarte ineficientă această metodă de transport, a dezvoltat un dispozitiv care îți permite teleportarea de pe o planetă x pe orice altă planetă y în P secunde cu condiţia că ai putea ajunge pornind de pe planeta x pe planeta y folosind maxim L canale de transport.
Acest dispozitiv este momentan doar un prototip, așa că nu îl poate folosi mai mult de K ori. Marian se află pe planeta 1 și te roagă să îi spui care e timpul minim necesar pentru a ajunge pe planeta N.
Să se scrie un program care calculează timpul minim necesar pentru a ajunge pe planeta N pornind de pe planeta 1.
OJI 2020, clasele XI-XII
| Problema | Ateleport | Operații I/O |
ateleport.in/ateleport.out
|
|---|---|---|---|
| Limita timp | 0.5 secunde | Limita memorie |
Total: 32 MB
/
Stivă 32 MB
|
| Id soluție | #63050784 | Utilizator | |
| Fișier | ateleport.cpp | Dimensiune | 2.24 KB |
| Data încărcării | 11 Februarie 2026, 18:58 | Scor/rezultat | Eroare de compilare |
ateleport.cpp: In function 'int main()': ateleport.cpp:33:17: error: wrong number of template arguments (0, should be 1) greater<> ^ 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 ateleport.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> ^ ateleport.cpp:34:5: error: template argument 3 is invalid > pq; ^ ateleport.cpp:34:9: error: invalid type in declaration before ';' token > pq; ^ ateleport.cpp:37:8: error: request for member 'push' in 'pq', which is of non-class type 'int' pq.push({0, 1, 0}); ^ ateleport.cpp:39:15: error: request for member 'empty' in 'pq', which is of non-class type 'int' while(!pq.empty()) ^ ateleport.cpp:41:14: error: expected unqualified-id before '[' token auto [cost, node, used] = pq.top(); ^ ateleport.cpp:42:12: error: request for member 'pop' in 'pq', which is of non-class type 'int' pq.pop(); ^ ateleport.cpp:44:12: error: 'cost' was not declared in this scope if(cost > dista[node][used]) ^ ateleport.cpp:44:25: error: 'node' was not declared in this scope if(cost > dista[node][used]) ^ ateleport.cpp:44:31: error: 'used' was not declared in this scope if(cost > dista[node][used]) ^ ateleport.cpp:48:18: error: expected unqualified-id before '[' token for(auto [next, w] : g[node]) ^ ateleport.cpp:48:18: error: expected ';' before '[' token ateleport.cpp:48:25: error: 'w' was not declared in this scope for(auto [next, w] : g[node]) ^ ateleport.cpp: In lambda function: ateleport.cpp:48:28: error: expected '{' before ':' token for(auto [next, w] : g[node]) ^ ateleport.cpp: In function 'int main()': ateleport.cpp:48:18: error: overloaded function with no contextual type information for(auto [next, w] : g[node]) ^ ateleport.cpp:48:28: error: expected ';' before ':' token for(auto [next, w] : g[node]) ^ ateleport.cpp:48:28: error: expected primary-expression before ':' token ateleport.cpp:48:28: error: expected ')' before ':' token ateleport.cpp:48:28: error: expected primary-expression before ':' token ateleport.cpp:48:28: error: expected ';' before ':' token ateleport.cpp:100:1: error: expected '}' at end of input } ^ ateleport.cpp:100:1: error: expected '}' at end of input
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Ateleport 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ă.