#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 | #63410661 | Utilizator | |
| Fișier | pulsar.cpp | Dimensiune | 2.81 KB |
| Data încărcării | 02 Martie 2026, 13:14 | Scor/rezultat | Eroare de compilare |
pulsar.cpp: In function 'void solve2()': pulsar.cpp:51:23: error: no matching function for call to 'std::queue<std::tuple<int, int, int> >::push(<brace-enclosed initializer list>)' q.push({xs, ys, 0}); ^ pulsar.cpp:51:23: note: candidates are: In file included from /usr/include/c++/4.8/queue:64:0, from pulsar.cpp:2: /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:53:14: error: expected unqualified-id before '[' token auto [ci, cj, ct] = q.front(); ^ pulsar.cpp:55:19: error: 'ct' was not declared in this scope int nt = (ct + 1) % lcm; ^ pulsar.cpp:57:22: error: 'ci' was not declared in this scope int ni = ci + dx[k]; ^ pulsar.cpp:58:22: error: 'cj' was not declared in this scope int nj = cj + dy[k]; ^ pulsar.cpp:65:40: error: no matching function for call to 'std::queue<std::tuple<int, int, int> >::push(<brace-enclosed initializer list>)' q.push({ci, cj, nt}); ^ pulsar.cpp:65:40: note: candidates are: In file included from /usr/include/c++/4.8/queue:64:0, from pulsar.cpp:2: /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:77:32: error: no matching function for call to 'std::queue<std::tuple<int, int, int> >::push(<brace-enclosed initializer list>)' q.push({ni, nj, nt}); ^ pulsar.cpp:77:32: note: candidates are: In file included from /usr/include/c++/4.8/queue:64:0, from pulsar.cpp:2: /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:59:17: warning: unused variable 'timp_nou' [-Wunused-variable] int timp_nou = (k==4) ? ct : nt; // stationare ramane la ct+1 ^ In file included from /usr/include/c++/4.8/deque:64:0, from /usr/include/c++/4.8/queue:60, from pulsar.cpp:2: /usr/include/c++/4.8/bits/stl_deque.h: In instantiation of 'void std::deque<_Tp, _Alloc>::_M_destroy_data(std::deque<_Tp, _Alloc>::iterator, std::deque<_Tp, _Alloc>::iterator, const std::allocator<_CharT>&) [with _Tp = std::tuple<int, int, int>; _Alloc = std::allocator<std::tuple<int, int, int> >; std::deque<_Tp, _Alloc>::iterator = std::_Deque_iterator<std::tuple<int, int, int>, std::tuple<int, int, int>&, std::tuple<int, int, int>*>]': /usr/include/c++/4.8/bits/stl_deque.h:918:62: required from 'std::deque<_Tp, _Alloc>::~deque() [with _Tp = std::tuple<int, int, int>; _Alloc = std::allocator<std::tuple<int, int, int> >]' pulsar.cpp:49:31: required from here /usr/include/c++/4.8/bits/stl_deque.h:1852:2: error: invalid use of incomplete type 'std::deque<std::tuple<int, int, int>, std::allocator<std::tuple<int, int, int> > >::value_type {aka class std::tuple<int, int, int>}' if (!__has_trivial_destructor(value_type)) ^ In file included from /usr/include/c++/4.8/bits/stl_algobase.h:64:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/fstream:38, from pulsar.cpp:1: /usr/include/c++/4.8/bits/stl_pair.h:83:11: error: declaration of 'std::deque<std::tuple<int, int, int>, std::allocator<std::tuple<int, int, int> > >::value_type {aka class std::tuple<int, int, int>}' class tuple; ^ In file included from /usr/include/c++/4.8/deque:64:0, from /usr/include/c++/4.8/queue:60, from pulsar.cpp:2: /usr/include/c++/4.8/bits/stl_deque.h: In instantiation of 'void std::deque<_Tp, _Alloc>::pop_front() [with _Tp = std::tuple<int, int, int>; _Alloc = std::allocator<std::tuple<int, int, int> >]': /usr/include/c++/4.8/bits/stl_queue.h:241:2: required from 'void std::queue<_Tp, _Sequence>::pop() [with _Tp = std::tuple<int, int, int>; _Sequence = std::deque<std::tuple<int, int, int>, std::allocator<std::tuple<int, int, int> > >]' pulsar.cpp:54:15: required from here /usr/include/c++/4.8/bits/stl_deque.h:1424:40: error: invalid use of incomplete type 'class std::tuple<int, int, int>' != this->_M_impl._M_start._M_last - 1) ^ In file included from /usr/include/c++/4.8/bits/stl_algobase.h:64:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/fstream:38, from pulsar.cpp:1: /usr/include/c++/4.8/bits/stl_pair.h:83:11: error: declaration of 'class std::tuple<int, int, int>' class tuple; ^ In file included from /usr/include/c++/4.8/deque:64:0, from /usr/include/c++/4.8/queue:60, from pulsar.cpp:2: /usr/include/c++/4.8/bits/stl_deque.h:1427:6: error: cannot increment a pointer to incomplete type 'std::tuple<int, int, int>' ++this->_M_impl._M_start._M_cur; ^ /usr/include/c++/4.8/bits/stl_deque.h: In instantiation of 'void std::_Deque_base<_Tp, _Alloc>::_M_initialize_map(std::size_t) [with _Tp = std::tuple<int, int, int>; _Alloc = std::allocator<std::tuple<int, int, int> >; std::size_t = unsigned int]': /usr/include/c++/4.8/bits/stl_deque.h:453:28: required from 'std::_Deque_base<_Tp, _Alloc>::_Deque_base() [with _Tp = std::tuple<int, int, int>; _Alloc = std::allocator<std::tuple<int, int, int> >]' /usr/include/c++/4.8/bits/stl_deque.h:783:15: required from 'std::deque<_Tp, _Alloc>::deque() [with _Tp = std::tuple<int, int, int>; _Alloc = std::allocator<std::tuple<int, int, int> >]' pulsar.cpp:49:31: required from here /usr/include/c++/4.8/bits/stl_deque.h:584:74: error: invalid application of 'sizeof' to incomplete type 'std::tuple<int, int, int>' const size_t __num_nodes = (__num_elements/ __deque_buf_size(sizeof(_Tp)) ^ /usr/include/c++/4.8/bits/stl_deque.h:615:31: error: invalid application of 'sizeof' to incomplete type 'std::tuple<int, int, int>' % __deque_buf_size(sizeof(_Tp))); ^ /usr/include/c++/4.8/bits/stl_deque.h: In instantiation of 'void std::_Deque_base<_Tp, _Alloc>::_M_deallocate_node(_Tp*) [with _Tp = std::tuple<int, int, int>; _Alloc = std::allocator<std::tuple<int, int, int> >]': /usr/include/c++/4.8/bits/stl_deque.h:642:25: required from 'void std::_Deque_base<_Tp, _Alloc>::_M_destroy_nodes(_Tp**, _Tp**) [with _Tp = std::tuple<int, int, int>; _Alloc = std::allocator<std::tuple<int, int, int> >]' /usr/include/c++/4.8/bits/stl_deque.h:566:42: required from 'std::_Deque_base<_Tp, _Alloc>::~_Deque_base() [with _Tp = std::tuple<int, int, int>; _Alloc = std::allocator<std::tuple<int, int, int> >]' /usr/include/c++/4.8/bits/stl_deque.h:783:15: required from 'std::deque<_Tp, _Alloc>::deque() [with _Tp = std::tuple<int, int, int>; _Alloc = std::allocator<std::tuple<int, int, int> >]' pulsar.cpp:49:31: required from here /usr/include/c++/4.8/bits/stl_deque.h:539:65: error: invalid application of 'sizeof' to incomplete type 'std::tuple<int, int, int>' _M_impl._Tp_alloc_type::deallocate(__p, __deque_buf_size(sizeof(_Tp))); ^
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ă.