#5004
Fie o matrice de dimensiuni 𝑁 × 𝑀 care conține numai valorile 0 și 1. Căsuțele marcate cu 0 sunt inaccesibile, în timp ce căsuțele marcate cu 1 sunt accesibile.
Gimi se va afla inițial într-o căsuță marcată cu 1 din această matrice, poziția ei nefiind însă cunoscută nouă. Lui Gimi îi putem da instrucțiuni de tipul: deplasează-te în căsuța (𝑥𝑑 , 𝑦𝑑). Regulile sunt următoarele:
1.(𝑥, 𝑦) sunt (cât timp sunt în matrice): (𝑥 − 1, 𝑦), (𝑥, 𝑦 + 1), (𝑥 + 1, 𝑦) și (𝑥, 𝑦 − 1).Dacă Gimi poate respecta toate regulile, atunci acesta se va deplasa în căsuța (𝑥𝑑 , 𝑦𝑑). Altfel, va rămâne pe loc.
Scrieți un program care, cunoscând 𝑁 și 𝑀, respectiv matricea, determină:
Cerința 1. O serie de instrucțiuni pe care, dacă Gimi o urmărește, indiferent de poziția lui inițială, ne va garanta faptul că va trece prin căsuța (𝑥𝑡 , 𝑦𝑡) (marcată cu 1).
Cerința 2. O serie de instrucțiuni pe care, dacă Gimi o urmărește, indiferent de poziția lui inițială, ne va garanta faptul că va trece prin toate celelalte căsuțe marcate cu 1.
Cerința 3. Cel mai mic număr 𝑃 astfel încât, primind o serie de 𝑄 instrucțiuni pe care, dacă Gimi o urmărește, indiferent de poziția lui de start, ne va garanta faptul că va trece prin toate celelalte căsuțe marcate cu 1, fără să fie necesară executarea instrucțiunilor de la 𝑃 + 1 la 𝑄.
| Problema | Blind | Operații I/O |
blind.in/blind.out
|
|---|---|---|---|
| Limita timp | 1 secunde | Limita memorie |
Total: 128 MB
/
Stivă 8 MB
|
| Id soluție | #64997870 | Utilizator | |
| Fișier | blind.cpp | Dimensiune | 885 B |
| Data încărcării | 09 Iulie 2026, 05:16 | Scor/rezultat | Eroare de compilare |
blind.cpp:3:7: error: expected nested-name-specifier before ‘namespacee’ 3 | using namespacee std; | ^~~~~~~~~~ blind.cpp:6:5: error: conflicting declaration ‘int M [501][501]’ 6 | int M[501][501]; | ^ blind.cpp:5:5: note: previous declaration as ‘int M’ 5 | int M,N,C; | ^ blind.cpp: In function ‘void move(int, int, int)’: blind.cpp:12:9: error: invalid types ‘int[int]’ for array subscript 12 | if(M[x][y] != 1) { return; } | ^ blind.cpp:13:6: error: invalid types ‘int[int]’ for array subscript 13 | M[x][y] = layer; | ^ blind.cpp:18:5: error: ‘g’ was not declared in this scope 18 | g << x << " " << y << endl; | ^ blind.cpp:18:27: error: ‘endl’ was not declared in this scope; did you mean ‘std::endl’? 18 | g << x << " " << y << endl; | ^~~~ | std::endl In file included from /usr/include/c++/13/iostream:41, from blind.cpp:1: /usr/include/c++/13/ostream:735:5: note: ‘std::endl’ declared here 735 | endl(basic_ostream<_CharT, _Traits>& __os) | ^~~~ blind.cpp: In function ‘int main()’: blind.cpp:26:5: error: ‘ifstream’ was not declared in this scope; did you mean ‘std::ifstream’? 26 | ifstream f("blind.in"); | ^~~~~~~~ | std::ifstream In file included from /usr/include/c++/13/ios:40, from /usr/include/c++/13/ostream:40: /usr/include/c++/13/iosfwd:164:41: note: ‘std::ifstream’ declared here 164 | typedef basic_ifstream<char> ifstream; | ^~~~~~~~ blind.cpp:27:5: error: ‘ofstream’ was not declared in this scope; did you mean ‘std::ofstream’? 27 | ofstream g("blind.out"); | ^~~~~~~~ | std::ofstream /usr/include/c++/13/iosfwd:167:41: note: ‘std::ofstream’ declared here 167 | typedef basic_ofstream<char> ofstream; | ^~~~~~~~ blind.cpp:29:5: error: ‘f’ was not declared in this scope 29 | f >> C >> N >> M; | ^ blind.cpp:34:31: error: invalid types ‘int[int]’ for array subscript 34 | f >> M[i][j]; | ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Blind 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ă.