#3446
Ateleport
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 | #53685455 | Utilizator | |
Fișier | ateleport.cpp | Dimensiune | 1.43 KB |
Data încărcării | 08 Noiembrie 2024, 12:14 | Scor / rezultat | Eroare de compilare |
ateleport.cpp: In function 'void bfs(int, int, int, int)': ateleport.cpp:28:24: error: no matching function for call to 'std::priority_queue<astel>::push(int&, int, int&, int)' pq.push(st, 0, k, 0); ^ ateleport.cpp:28:24: note: candidates are: In file included from /usr/include/c++/4.8/queue:64:0, from ateleport.cpp:2: /usr/include/c++/4.8/bits/stl_queue.h:496:7: note: void std::priority_queue<_Tp, _Sequence, _Compare>::push(const value_type&) [with _Tp = astel; _Sequence = std::vector<astel, std::allocator<astel> >; _Compare = std::less<astel>; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = astel] push(const value_type& __x) ^ /usr/include/c++/4.8/bits/stl_queue.h:496:7: note: candidate expects 1 argument, 4 provided /usr/include/c++/4.8/bits/stl_queue.h:504:7: note: void std::priority_queue<_Tp, _Sequence, _Compare>::push(std::priority_queue<_Tp, _Sequence, _Compare>::value_type&&) [with _Tp = astel; _Sequence = std::vector<astel, std::allocator<astel> >; _Compare = std::less<astel>; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = astel] push(value_type&& __x) ^ /usr/include/c++/4.8/bits/stl_queue.h:504:7: note: candidate expects 1 argument, 4 provided ateleport.cpp:39:29: error: 'hrt' cannot be used as a function hrt(it.first) = d1 + it.second; ^ ateleport.cpp:40:61: error: no matching function for call to 'std::priority_queue<astel>::push(int&, int, int&, int)' pq.push(it.first, d1 + it.second, f1, c1 + 1); ^ ateleport.cpp:40:61: note: candidates are: In file included from /usr/include/c++/4.8/queue:64:0, from ateleport.cpp:2: /usr/include/c++/4.8/bits/stl_queue.h:496:7: note: void std::priority_queue<_Tp, _Sequence, _Compare>::push(const value_type&) [with _Tp = astel; _Sequence = std::vector<astel, std::allocator<astel> >; _Compare = std::less<astel>; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = astel] push(const value_type& __x) ^ /usr/include/c++/4.8/bits/stl_queue.h:496:7: note: candidate expects 1 argument, 4 provided /usr/include/c++/4.8/bits/stl_queue.h:504:7: note: void std::priority_queue<_Tp, _Sequence, _Compare>::push(std::priority_queue<_Tp, _Sequence, _Compare>::value_type&&) [with _Tp = astel; _Sequence = std::vector<astel, std::allocator<astel> >; _Compare = std::less<astel>; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = astel] push(value_type&& __x) ^ /usr/include/c++/4.8/bits/stl_queue.h:504:7: note: candidate expects 1 argument, 4 provided ateleport.cpp:44:29: error: 'hrt' cannot be used as a function hrt(it.first) = d1 + p; ^ ateleport.cpp:45:57: error: no matching function for call to 'std::priority_queue<astel>::push(int&, int, int, int)' pq.push(it.first, d1 + p, f1 - 1, c1 + 1); ^ ateleport.cpp:45:57: note: candidates are: In file included from /usr/include/c++/4.8/queue:64:0, from ateleport.cpp:2: /usr/include/c++/4.8/bits/stl_queue.h:496:7: note: void std::priority_queue<_Tp, _Sequence, _Compare>::push(const value_type&) [with _Tp = astel; _Sequence = std::vector<astel, std::allocator<astel> >; _Compare = std::less<astel>; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = astel] push(const value_type& __x) ^ /usr/include/c++/4.8/bits/stl_queue.h:496:7: note: candidate expects 1 argument, 4 provided /usr/include/c++/4.8/bits/stl_queue.h:504:7: note: void std::priority_queue<_Tp, _Sequence, _Compare>::push(std::priority_queue<_Tp, _Sequence, _Compare>::value_type&&) [with _Tp = astel; _Sequence = std::vector<astel, std::allocator<astel> >; _Compare = std::less<astel>; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = astel] push(value_type&& __x) ^ /usr/include/c++/4.8/bits/stl_queue.h:504:7: note: candidate expects 1 argument, 4 provided ateleport.cpp: In function 'int main()': ateleport.cpp:61:33: error: 'INT_MAX' was not declared in this scope std::fill(hrt, hrt + n + 1, INT_MAX); ^ ateleport.cpp:62:19: error: 'bsf' was not declared in this scope bsf(1, l, k, p); ^
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ă.