하노이 탑이 무엇인지에 관해서는 구글이나 위키 백과 페이지를 참조하십시오.
코드는 두 가지 작업을 수행 할 수 있어야하며 다음과 같습니다.
- 하노이 타워의 시작점에서 디스크 수를 지정하는 사용자 입력 허용
- 타워 퍼즐에 솔루션을 보여주기 위해 원하는 방식으로 출력을 만듭니다 (어떻게 든 논리적 인 한).
논리 출력의 예는 다음과 같습니다 (4 디스크 시작 사용).
L1L2C1L1R-2R-1L1L2C1C-1R-2C1L1L2C1
L
왼쪽 페그, C
중앙 페그 R
, 오른쪽 페그를 나타내며 숫자는 해당 페그에서 디스크를 얼마나 멀리 이동하고 어떤 방향으로하는지 나타냅니다. 양수는 디스크가 가장 왼쪽 페그에서 시작하기 때문에 가장 오른쪽 페그로 이동하는 페그 수를 나타냅니다.
하노이의 탑 규칙은 간단합니다 :
- 한 번에 하나의 디스크 만 이동할 수 있습니다.
- 각 이동은 페그 중 하나에서 상단 디스크를 가져 와서 해당 페그에 이미 존재할 수있는 다른 디스크의 상단으로 다른 페그로 밀어 넣는 것으로 구성됩니다.
- 작은 디스크 위에는 디스크를 놓을 수 없습니다.
디스크는 가장 왼쪽 페그에서 시작합니다. 맨 아래에서 가장 크고 맨 위에서 가장 작습니다.