#2527
hanoi
Turnurile din Hanoi este un joc matematic sau, dacă vreți, un puzzle. Este format din trei tije A
, B
și C
și un număr variabil de discuri, de diferite diametre. Inițial discurile sunt așezate în ordine descrescătoare a diametrelor pe tija A
, de la vârf către bază, astfel încât să formeze un turn.
Scopul jocului este acela de a muta toate discurile de pe tija A
pe tija C
folosind ca tijă intermediară tija B
, respectând următoarele reguli:
Cerința
Dacă se cunoaște numărul n
de discuri aflate pe tija A
, să se determine șirul mutărilor necesare pentru ca toate discurile să fie mutate pe tija C
.
Problema | hanoi | Operații I/O |
![]() hanoi.in /hanoi.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #57240795 | Utilizator | |
Fișier | hanoi.cpp | Dimensiune | 1.01 KB |
Data încărcării | 21 Martie 2025, 11:46 | Scor / rezultat | Eroare de compilare |
hanoi.cpp:19:17: error: stray '#' in program int put = 1;#include <fstream> ^ hanoi.cpp: In function 'void hanoi(int, char, char, char)': hanoi.cpp:10:9: error: reference to 'cout' is ambiguous cout << a << "->" << c << '\n'; ^ hanoi.cpp:4:10: note: candidates are: std::ofstream cout ofstream cout("hanoi.out"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from hanoi.cpp:1: /usr/include/c++/4.8/iostream:61:18: note: std::ostream std::cout extern ostream cout; /// Linked to standard output ^ hanoi.cpp: In function 'int main()': hanoi.cpp:17:5: error: reference to 'cin' is ambiguous cin >> n; ^ hanoi.cpp:3:10: note: candidates are: std::ifstream cin ifstream cin("hanoi.in"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from hanoi.cpp:1: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ hanoi.cpp:19:18: error: 'include' was not declared in this scope int put = 1;#include <fstream> ^ hanoi.cpp:19:34: error: expected primary-expression before '>' token int put = 1;#include <fstream> ^ hanoi.cpp:21:1: error: expected primary-expression before 'using' using namespace std; ^ hanoi.cpp:21:1: error: expected ';' before 'using' hanoi.cpp:26:5: error: redeclaration of 'int n' int n,nr=1; ^ hanoi.cpp:16:9: error: 'int n' previously declared here int n; ^ hanoi.cpp:27:6: error: redeclaration of 'char a' char a='A', b='B', c='C'; ^ hanoi.cpp:18:10: error: 'char a' previously declared here char a = 'A' , b = 'B' , c = 'C'; ^ hanoi.cpp:27:13: error: redeclaration of 'char b' char a='A', b='B', c='C'; ^ hanoi.cpp:18:20: error: 'char b' previously declared here char a = 'A' , b = 'B' , c = 'C'; ^ hanoi.cpp:27:20: error: redeclaration of 'char c' char a='A', b='B', c='C'; ^ hanoi.cpp:18:30: error: 'char c' previously declared here char a = 'A' , b = 'B' , c = 'C'; ^ hanoi.cpp:30:1: error: a function-definition is not allowed here before '{' token { ^ hanoi.cpp:18:10: warning: unused variable 'a' [-Wunused-variable] char a = 'A' , b = 'B' , c = 'C'; ^ hanoi.cpp:18:20: warning: unused variable 'b' [-Wunused-variable] char a = 'A' , b = 'B' , c = 'C'; ^ hanoi.cpp:18:30: warning: unused variable 'c' [-Wunused-variable] char a = 'A' , b = 'B' , c = 'C'; ^ hanoi.cpp:19:9: warning: unused variable 'put' [-Wunused-variable] int put = 1;#include <fstream> ^ hanoi.cpp:26:7: warning: unused variable 'nr' [-Wunused-variable] int n,nr=1; ^ hanoi.cpp:55:1: error: expected '}' at end of input } ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema hanoi 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ă.