Lovely Professional University: Design Problem-1
Lovely Professional University: Design Problem-1
Design problem-1
CSE 360
ROLL NO-08
SEC-A2701
BTECH (H)-MBA IT
INTRODUCTION:
The tower of Hanoi (commonly also known as the "towers of Hanoi"), is a puzzle invented by E. Lucas in
1883. Given a stack of disks arranged from largest on the bottom to smallest on top placed on a rod,
together with two empty rods, the towers of Hanoi puzzle asks for the minimum number of moves
required to move the stack from one rod to another, where moves are allowed only if they place smaller
disks on top of larger disks.
The objective of the puzzle is to move the entire stack to another rod, obeying the following rules:
ORIGINS:
The puzzle was invented by the French mathematician Édouard Lucas in 1883. There is a legend about a
Vietnamese temple which contains a large room with three time-worn posts in it surrounded by 64
golden disks. The priests of Hanoi, acting out the command of an ancient prophecy, have been moving
these disks, in accordance with the rules of the puzzle, since that time. The puzzle is therefore also
known as the Tower of Brahma puzzle. According to the legend, when the last move of the puzzle is
completed, the world will end. It is not clear whether Lucas invented this legend or was inspired by it.
If the legend were true, and if the priests were able to move disks at a rate of one per second, using the
smallest number of moves, it would take them 264−1 seconds or roughly 584.38 billion years;[1] it
would take 18,446,744,073,709,551,615 turns to finish.
There are many variations on this legend. For instance, in some tellings, the temple is a monastery and
the priests are monks. The temple or monastery may be said to be in different parts of the world —
including Hanoi, Vietnam, and may be associated with any religion. In some versions, other elements are
introduced, such as the fact that the tower was created at the beginning of the world, or that the priests
or monks may make only one move per day.
The Flag Tower of Hanoi may have served as the inspiration for the name.
SOLUTION:
The puzzle can be played with any number of disks, although many toy versions have around seven to
nine of them. The game seems impossible to many novices, yet is solvable with a simple algorithm.
Simple solution
Recursive solution
A key to solving this puzzle is to recognize that it can be solved by breaking the problem down into a
collection of smaller problems and further breaking those problems down into even smaller problems
until a solution is reached. The following procedure demonstrates this approach.
The above is a recursive algorithm: to carry out steps 1 and 3, apply the same algorithm again for n−1.
The entire procedure is a finite number of steps, since at some point the algorithm will be required for n
= 1. This step, moving a single disc from peg A to peg B, is trivial.
The Tower of Hanoi is often used as an example of a simple recursive algorithm when teaching
introductory programming. Recursive solutions typically resemble the following python code:
Hanoi(n - 1, A, B, C)
Hanoi(n - 1, B, C, A)
OUTPUT: