#2894
Barlog
Este anul 2019, dar Zmeul-Cel-Rău și Făt-Frumos luptă în continuare. Zmeul l-a prins pe Făt-Frumos şi l-a închis în una dintre camerele bârlogului său. Un bârlog de zmeu are forma unui tablou bidimensional, în care camerele sunt plasate sub forma a n
linii și m
coloane. Vom numerota liniile de la 1
la n
, iar coloanele de la 1
la m
, astfel că fiecare cameră poate fi identificată prin numărul liniei și al coloanei pe care se află.
Orice cameră are patru pereți și câte o ușă pe fiecare perete prin care poate comunica cu camerele învecinate. Mai exact, camera de pe linia i
și coloana j
poate comunica cu camerele (i-1,j)
, (i,j+1)
, (i+1,j)
, (i,j-1)
(desigur, dacă acestea există). Fiecare cameră are asociat un cod. Ușile din orice cameră se pot deschide cu o cartelă magnetică. Dacă codul camerei este un subșir al cuvântului memorat pe cartela magnetică, atunci ușile din camera respectivă se vor deschide folosind cartela. Ileana Cosânzeana a reușit să-i trimită lui Făt-Frumos o cartelă magnetică.
Scrieți un program care rezolvă următoarele două cerințe:
1. determină numărul de camere în care ar putea ajunge Făt-Frumos folosind cartela primită de la Ileana Cosânzeana;
2. determină numărul minim de camere prin care trece Făt-Frumos pentru a ieși din bârlogul zmeului (adică poate deschide ușa unei camere prin care ajunge în exteriorul bârlogului).
Olimpiada Municipală Iași, clasa a X-a
Problema | Barlog | Operații I/O |
barlog.in /barlog.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 4 MB
/
Stivă 2 MB
|
Id soluție | #41057623 | Utilizator | |
Fișier | barlog.cpp | Dimensiune | 2.39 KB |
Data încărcării | 10 Ianuarie 2023, 21:14 | Scor / rezultat | Eroare de compilare |
barlog.cpp: In function 'int main()': barlog.cpp:78:5: error: reference to 'cin' is ambiguous cin >> cer >> n >> m; ^ barlog.cpp:7:10: note: candidates are: std::ifstream cin ifstream cin("barlog.in"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from barlog.cpp:1: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ barlog.cpp:81:13: error: reference to 'cin' is ambiguous cin >> mat[i][j]; ^ barlog.cpp:7:10: note: candidates are: std::ifstream cin ifstream cin("barlog.in"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from barlog.cpp:1: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ barlog.cpp:83:5: error: reference to 'cin' is ambiguous cin >> Xf >> Yf; ^ barlog.cpp:7:10: note: candidates are: std::ifstream cin ifstream cin("barlog.in"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from barlog.cpp:1: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ barlog.cpp:84:5: error: reference to 'cin' is ambiguous cin >> cheie; ^ barlog.cpp:7:10: note: candidates are: std::ifstream cin ifstream cin("barlog.in"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from barlog.cpp:1: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ barlog.cpp:113:17: error: reference to 'cout' is ambiguous if(cer == 2)cout << dmin; ^ barlog.cpp:8:10: note: candidates are: std::ofstream cout ofstream cout("barlog.out"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from barlog.cpp:1: /usr/include/c++/4.8/iostream:61:18: note: std::ostream std::cout extern ostream cout; /// Linked to standard output ^ barlog.cpp:114:10: error: reference to 'cout' is ambiguous else cout << nr; ^ barlog.cpp:8:10: note: candidates are: std::ofstream cout ofstream cout("barlog.out"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from barlog.cpp:1: /usr/include/c++/4.8/iostream:61:18: note: std::ostream std::cout extern ostream cout; /// Linked to standard output ^ barlog.cpp:86:9: warning: unused variable 'nr1' [-Wunused-variable] int nr1 = 0; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Barlog 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ă.