#1188
Casa
În această poveste este vorba despre o casă cu mai multe camere. O cameră are forma unui pătrat de latură 1
. Dacă două camere au un perete comun, atunci se poate trece dintr-o cameră în alta. Casa nu are neapărat formă dreptunghiulară.
O asemenea casă poate fi descrisă în povestea noastră în două moduri:
0
şi 1
în care există N
valori egale cu 1
, ce corespund camerelor, iar prima linie, ultima linie, prima coloană şi ultima coloană au cel puţin un element egal cu 1
.N-1
perechi (a[i], b[i]) 1≤i<n
în care a[i]
din {1,2,…,i}
şi b[i]
din {N, S, E, V}
. Camerele vor fi numerotate de la 1
la n
. Perechea (a[i], b[i])
precizează poziţia camerei i+1
faţă de camera a[i]
: E
înseamnă la dreapta (est), N
deasupra (nord), V
la stânga (vest), S
dedesubt (sud). Observaţi că pentru prima cameră nu există nicio precizare!De exemplu, casa de mai sus poate fi descrisă de şirul (1 E) (2 E) (2 S) (3 S)
, adică a doua cameră e “lipită” la est de prima cameră, următoarea (a treia) la est de camera 2, a patra la sud de camera 2, iar ultima la sud de camera 3.
Cerința
Problema | Casa | Operații I/O |
casa.in /casa.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 4 MB
/
Stivă 4 MB
|
Id soluție | #50703316 | Utilizator | |
Fișier | casa.cpp | Dimensiune | 3.29 KB |
Data încărcării | 22 Aprilie 2024, 21:50 | Scor / rezultat | Eroare de compilare |
casa.cpp: In function 'int main()': casa.cpp:117:13: error: 'x' was not declared in this scope x=curent.first(); ^ casa.cpp:117:28: error: expression cannot be used as a function x=curent.first(); ^ casa.cpp:118:13: error: 'y' was not declared in this scope y=curent.second(); ^ casa.cpp:118:29: error: expression cannot be used as a function y=curent.second(); ^ casa.cpp:123:31: error: 'newy' was not declared in this scope if (mat[newx][newy]==1) ^ casa.cpp:125:56: error: 'reverseindice' was not declared in this scope g << curr << ' ' << reverseindice(i) << '\n'; ^ casa.cpp:127:40: error: no matching function for call to 'std::queue<std::pair<int, int> >::push(<brace-enclosed initializer list>)' q.push({newx, newy}); ^ casa.cpp:127:40: note: candidates are: In file included from /usr/include/c++/4.8/queue:64:0, from casa.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::pair<int, int>; _Sequence = std::deque<std::pair<int, int>, std::allocator<std::pair<int, int> > >; std::queue<_Tp, _Sequence>::value_type = std::pair<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::pair<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::pair<int, int>; _Sequence = std::deque<std::pair<int, int>, std::allocator<std::pair<int, int> > >; std::queue<_Tp, _Sequence>::value_type = std::pair<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::pair<int, int> >::value_type&& {aka std::pair<int, int>&&}'
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Casa 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ă.