Pagini recente »
Diferențe pentru problema/tripletrouble între reviziile 10 și 11
|
Diferențe pentru problema/tripletrouble între reviziile 6 și 11
|
Diferențe pentru problema/hanoi între reviziile 1 și 5
Diferențe pentru
problema/hanoi între reviziile
#1 si
#5
Nu există diferențe între titluri.
Diferențe între conținut:
== include(page="template/taskheader" task_id="hanoi") ==
Poveste și cerință...
"Turnurile din hanoi":http://ro.wikipedia.org/wiki/Turnul_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).
h2. Cerință
Dat numărul de discuri $n$ să se afișeze o suită de mutări care rezolvă problema turnurilor din hanoi.
h2. Date de intrare
Fișierul de intrare $hanoi.in$ ...
Fișierul de intrare $hanoi.in$ conține un singur număr și anume numărul de discuri [$n$].
h2. Date de ieșire
În fișierul de ieșire $hanoi.out$ ...
Î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:
h2. Restricții
pre. <număr disc> <tijă sursă> <tijă destinație>
* $... ≤ ... ≤ ...$
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$].
h2. Exemplu
h2. Restricții
table(example).
|_. hanoi.in |_. hanoi.out |
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
|
* $1 ≤ n ≤ 20$
* Orice secvență de corectă de mutări este acceptată
h3. Explicație
h2. Exemplu
...
table(example).
|_. 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
|
== include(page="template/taskfooter" task_id="hanoi") ==
== include(page="template/taskfooter" task_id="hanoi") ==
Nu există diferențe între securitate.