Hány lépésből oldható meg pl. egy ilyen, 10-korongból álló átrakosgatós? Vegyük észre, hogy a B és a C elnevezés felcserélhető, azaz A-ról B-re átrakni, vagy A-ról C-re átrakni ugyanannyi lépés. |
Az ábráról egyértelmű, hogy
2.a célrúd aljára áttehessük az 10. legnagyobb korongot, majd 3. ezt követően, a célrúdra átpakolni még a többit is, pontosan ugyanaz a feladat (és lépésszám), mint amit az 1. fázis alatt elvégeztünk. | ![]() |
A 10 db korong átpakolása tehát: eggyel több lépésben oldható meg, mint 9 db korong esetéhez szükséges kétszerese.
A 9 db-hoz pedig kétszer annyi + még egy lépés kell, mint a 8 db-éhoz… és így tovább visszafelé..., azaz általánosan megállapítható: X(N) = 2 x X(N-1)+1 (Az ilyen képletformát, amelyben egy sorozat két egymást követő, de különben tetszőleges tagjára adunk meg egy összefüggést, a matematikában „rekurzív” képzésnek nevezzük.) 1 , 3 , 7 , ... (minimális lépés-szám) 2 , 4 , 8 , ... (ezek pedig 2 növekvő hatványai) Ha ez így van, akkor a 10-korongos változat megoldásához: 2*10 -1 lépés kell, ami több, mint 1.000 (!) Hogy biztosan nem tévedünk és a „kettő-hatványos” sejtésünk nemcsak az első néhány esetre igaz, azt persze be is kell bizonyítanunk. Azért is, hogy ne essünk egy megalapozatlan általánosítás csapdájába! Ekkor viszont biztosan igaz lesz a következő elemre is, hiszen ha a rekurzív formulánkba N=K+1-et helyettesítünk, akkor ugyanezt az eredményt kapjuk: (Ezt az utóbbi bizonyítási módszert a matematikában „teljes indukció”-nak hívják: Bizonyítsd be az elsőre, majd nézd meg, hogyha igaz egy tetszőleges K-adikra, akkor a K+1-dikre is igaz lesz!) |