#2140
Se consideră harta universului ca fiind o matrice cu 250 de linii și 250 de coloane. În fiecare celulă se găsește o așa numită poartă stelară, iar în anumite celule se găsesc echipaje ale porții stelare. La o deplasare, un echipaj se poate deplasa din locul în care se află în oricare alt loc în care se găsește o a doua poartă, în cazul nostru în orice altă poziție din matrice. Nu se permite situarea simultană a mai mult de un echipaj într o celulă. La un moment dat un singur echipaj se poate deplasa de la o poartă stelară la alta.
Dându-se un număr p de echipaje, pentru fiecare echipaj fiind precizate poziția inițială și poziția finală, determinați numărul minim de deplasări necesare pentru ca toate echipajele să ajungă din poziția inițială în cea finală.
OJI 2002
| Problema | poartas | Operații I/O |
poartas.in/poartas.out
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 2 MB
/
Stivă 1 MB
|
| Id soluție | #62515510 | Utilizator | |
| Fișier | poartas.cpp | Dimensiune | 944 B |
| Data încărcării | 23 Ianuarie 2026, 18:12 | Scor/rezultat | Eroare de compilare |
poartas.cpp: In function 'int main()': poartas.cpp:26:26: error: no matching function for call to 'std::vector<pairr>::push_back(<brace-enclosed initializer list>)' v.push_back({lin, col}); ^ poartas.cpp:26:26: note: candidates are: In file included from /usr/include/c++/4.8/vector:64:0, from /usr/include/c++/4.8/bits/random.h:34, from /usr/include/c++/4.8/random:50, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from poartas.cpp:1: /usr/include/c++/4.8/bits/stl_vector.h:901:7: note: void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = pairr; _Alloc = std::allocator<pairr>; std::vector<_Tp, _Alloc>::value_type = pairr] push_back(const value_type& __x) ^ /usr/include/c++/4.8/bits/stl_vector.h:901:7: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const value_type& {aka const pairr&}' /usr/include/c++/4.8/bits/stl_vector.h:919:7: note: void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = pairr; _Alloc = std::allocator<pairr>; std::vector<_Tp, _Alloc>::value_type = pairr] push_back(value_type&& __x) ^ /usr/include/c++/4.8/bits/stl_vector.h:919:7: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::vector<pairr>::value_type&& {aka pairr&&}' poartas.cpp:31:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (i=0; i<v.size(); i++) ^ poartas.cpp:36:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (i=0; i<v.size(); i++) ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema poartas 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ă.