 |
|
Daca tot ziceati ca nu prea apar probleme uita-ti una .
Poate nu e noua , dar merita rezolvata :
UN ALT FEL DE HANOI (45 puncte)
Fie 2 <= n <= 10 tije pe care se afla bile colorate. Culorile sunt
notate cu numere de la 1 la n. Sa se aranjeze bilele pe tije, astfel
incat
pe fiecare sa fie n bile notate, de jos in sus, de la 1 la n. Pentru
miscarea
bilelor se va folosi o tija ajutatoare, notata n+1. Pe fiecare tija
numarul
maxim de bile este n. O bila se poate muta pe o alta tija, daca pe
aceasta
tija este loc si daca deasupra bilei nu se afla o alta.
Pozitia finala trebuie sa arate astfel:
n n n ... n |
n-1 n-1 n-1 n-1 |
. . . . .
. . . . .
. . . . . <-- tije
3 3 3 3 |
2 2 2 2 |
1 1 1 1 |
----------------------------------------------------
1 2 3 n n+1 <--
numarul
tijei
Configuratia initiala se citeste din fisierul "date" avand
structura:
pe prima linie este numarul de tije n
pe urmatoarele n linii sunt n numere de la 1 la n,separate prin spatii,
reprezentand asezarea bilelor pe fiecare tija, asezare citita de jos in
sus.
Iesirea se face in fisierul "rez" in care fiecare linie, cu
exceptia
ultimei care contine un numar m, are forma
i x y
unde:
i reprezinta culoarea;
x si y numarul tijei de pe care, respectiv pe care, se muta bila;
aceste
numere sunt cuprinse intre 1 si n+1.
m numarul total de mutari
Exemplu:
fisierul "date":
2 1 2 |
1 1 1 2 |
2 2 -----------------
1 2 3
fisierul "rez":
2 2 3
2 2 3 2 2 |
1 1 2 1 1 |
2 3 1 -----------------
2 3 2 1 2 3
5
Timp de executie: 1min/test pe un 586 la 133MHz.
------------------------------
K Free E-mail http://www.k.ro/
by KappaNet http://www.kappa.ro/
Privacy Policy-
Terms of Service
-
Guidelines
Copyright © 1994-2001
Yahoo! Inc. All rights reserved.