#4098
Data stelară 3210: Căpitanul navei USS Entrerprise, Jean-Luc Picard se află într-o misiune importantă în cuadrantul Beta al galaxiei. Acesta trebuie să ajungă cât mai rapid de la planeta Vulcan până la planeta Qo’noS, dar din păcate pentru această misiune Jean-Luc Picard nu va putea să ajungă instantaneu la destinație folosind warp drive-ul navei, ci va trebui să se deplaseze în mod normal, din sector în sector. Vouă vă revine rolul de a îl ajuta pe Jean-Luc Picard și să îi răspundeți la una din următoarele întrebări știind harta galaxiei:
- Care este numărul maxim de sectoare ale galaxiei Smax afectate la orice moment de timp de către cel puțin un pulsar.
- Care este timpul minim Tmin de care are nevoie Jean-Luc Picard pentru a ajunge pe planeta Qo’noS.
OJI 2022 clasa a X-a
| Problema | pulsar | Operații I/O |
pulsar.in/pulsar.out
|
|---|---|---|---|
| Limita timp | 2 secunde | Limita memorie |
Total: 256 MB
/
Stivă 64 MB
|
| Id soluție | #63057295 | Utilizator | |
| Fișier | pulsar.cpp | Dimensiune | 9.11 KB |
| Data încărcării | 12 Februarie 2026, 02:24 | Scor/rezultat | Eroare de compilare |
pulsar.cpp: In function 'void rezolva_cerinta2()': pulsar.cpp:127:32: error: converting to 'std::queue<std::tuple<int, int, int> >::value_type {aka std::tuple<int, int, int>}' from initializer list would use explicit constructor 'constexpr std::tuple< <template-parameter-1-1> >::tuple(_UElements&& ...) [with _UElements = {int&, int&, int&}; <template-parameter-2-2> = void; _Elements = {int, int, int}]' q.push({xs, ys, faza_start}); // Adaugam starea initiala in coada ^ pulsar.cpp:130:14: error: expected unqualified-id before '[' token auto [cx, cy, cf] = q.front(); // Extragem starea curenta din coada ^ pulsar.cpp:133:27: error: 'cx' was not declared in this scope int t_curr = dist[cx][cy][cf]; // Timpul curent de sosire in aceasta stare ^ pulsar.cpp:133:31: error: 'cy' was not declared in this scope int t_curr = dist[cx][cy][cf]; // Timpul curent de sosire in aceasta stare ^ pulsar.cpp:133:35: error: 'cf' was not declared in this scope int t_curr = dist[cx][cy][cf]; // Timpul curent de sosire in aceasta stare ^ pulsar.cpp:147:43: error: no matching function for call to 'std::queue<std::tuple<int, int, int> >::push(<brace-enclosed initializer list>)' q.push({cx, cy, faza_next}); // Adaugam starea in coada ^ pulsar.cpp:147:43: note: candidates are: In file included from /usr/include/c++/4.8/queue:64:0, from pulsar.cpp:4: /usr/include/c++/4.8/bits/stl_queue.h:212:7: note: void std::queue<_Tp, _Sequence>::push(const value_type&) [with _Tp = std::tuple<int, int, int>; _Sequence = std::deque<std::tuple<int, int, int>, std::allocator<std::tuple<int, int, int> > >; std::queue<_Tp, _Sequence>::value_type = std::tuple<int, int, int>] push(const value_type& __x) ^ /usr/include/c++/4.8/bits/stl_queue.h:212:7: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const value_type& {aka const std::tuple<int, int, int>&}' /usr/include/c++/4.8/bits/stl_queue.h:217:7: note: void std::queue<_Tp, _Sequence>::push(std::queue<_Tp, _Sequence>::value_type&&) [with _Tp = std::tuple<int, int, int>; _Sequence = std::deque<std::tuple<int, int, int>, std::allocator<std::tuple<int, int, int> > >; std::queue<_Tp, _Sequence>::value_type = std::tuple<int, int, int>] push(value_type&& __x) ^ /usr/include/c++/4.8/bits/stl_queue.h:217:7: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::queue<std::tuple<int, int, int> >::value_type&& {aka std::tuple<int, int, int>&&}' pulsar.cpp:161:47: error: converting to 'std::queue<std::tuple<int, int, int> >::value_type {aka std::tuple<int, int, int>}' from initializer list would use explicit constructor 'constexpr std::tuple< <template-parameter-1-1> >::tuple(_UElements&& ...) [with _UElements = {int&, int&, int&}; <template-parameter-2-2> = void; _Elements = {int, int, int}]' q.push({nx, ny, faza_next}); // Adaugam starea in coada ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema pulsar 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ă.