Fișierul intrare/ieșire | hanoi.in, hanoi.out | Sursă | Cerc informatică Vianu |
---|---|---|---|
Autor | din folclor | Adăugată de |
|
Timp de execuție pe test | 1 sec | Limită de memorie | 2048 KB |
Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
Hanoi (clasele 7-8)
Turnurile din hanoi. Fie trei tije, 1 2 și 3 și n discuri perforate de diametre diferite. Discurile sînt așezate inițial pe tija 1 în ordinea descrescătoare a diametrelor acestora, considerînd sensul de la bază la vîrf. Problema constă în a muta turnul de n discuri de pe tija 1 pe tija 2 ținînd cont de următoarele reguli:
- La fiecare mutare se mută un singur disc, care se află în vîrful unui turn
- În permanență, pe fiecare tijă, deasupra unui disc pot fi mutate numai discuri de diametre mai mici.
Discurile sînt numerotate de la 1 la n în ordinea mărimii lor (1 este discul cel mai mic).
Cerință
Dat numărul de discuri n să se afișeze o suită de mutări care rezolvă problema turnurilor din hanoi.
Date de intrare
Fișierul de intrare hanoi.in conține un singur număr și anume numărul de discuri n.
Date de ieșire
În fișierul de ieșire hanoi.out se vor scrie mai multe mutări, cîte o mutare pe linie. O linie va fi de forma:
Se cere ca în urma efectuării tuturor mutărilor din fișierul de ieșire grămada de discuri să se afle la final pe tija 2.
Restricții
- 1 ≤ n ≤ 20
- Orice secvență de corectă de mutări este acceptată
Exemplu
hanoi.in | hanoi.out | Explicație |
---|---|---|
3 |
1 1 2 2 1 3 1 2 3 3 1 2 1 3 1 2 3 2 1 1 2 |
Mutăm discul 1 de pe tija 1 pe tija 2 Mutăm discul 2 de pe tija 1 pe tija 3 Mutăm discul 1 de pe tija 2 pe tija 3 Mutăm discul 3 de pe tija 1 pe tija 2 Mutăm discul 1 de pe tija 3 pe tija 1 Mutăm discul 2 de pe tija 3 pe tija 2 Mutăm discul 1 de pe tija 1 pe tija 2 |