#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 | #12672742 | Utilizator | |
Fișier | hanoi.cpp | Dimensiune | 265 B |
Data încărcării | 09 Decembrie 2018, 14:14 | Scor / rezultat | Eroare de compilare |
hanoi.cpp:5:14: warning: missing terminating " character [enabled by default] ifstream fin("hanoi.in); ^ hanoi.cpp:5:1: error: missing terminating " character ifstream fin("hanoi.in); ^ hanoi.cpp:6:15: warning: missing terminating " character [enabled by default] ofstream fout("hanoi.out); ^ hanoi.cpp:6:1: error: missing terminating " character ofstream fout("hanoi.out); ^ hanoi.cpp:8:15: error: expected ')' before '{' token {int n; ^ hanoi.cpp:8:15: error: expected ')' before '{' token hanoi.cpp: In function 'std::ifstream fin(std::ofstream (*)(int (*)()))': hanoi.cpp:8:15: error: return type 'std::ifstream {aka class std::basic_ifstream<char>}' is incomplete hanoi.cpp:9:21: error: invalid operands of types 'void(std::ofstream (*)(int (*)())) {aka void(std::basic_ofstream<char> (*)(int (*)()))}' and 'int' to binary 'operator>>' fin>>n; ^ hanoi.cpp:10:31: error: invalid operands of types 'std::ofstream (*)(int (*)()) {aka std::basic_ofstream<char> (*)(int (*)())}' and '__gnu_cxx::__promote_2<int, int, double, double>::__type {aka double}' to binary 'operator<<' fout<<pow(2,n)-1; ^ hanoi.cpp:10:30: warning: suggest parentheses around '-' inside '<<' [-Wparentheses] fout<<pow(2,n)-1; ^
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ă.