1070. 汉诺塔游戏

1070. 汉诺塔游戏

暂无测试数据。

题目描述

汉诺塔由编号为 \(1\) 到 \(n\) 大小不同的圆盘和三根柱子 \(a,b,c\) 组成,编号越小盘子越小。

开始时,这 \(n\) 个圆盘由大到小依次套在 \(a\) 柱上,如图所示。
要求把 \(a\) 柱上 \(n\) 个圆盘按下述规则移到 \(c\) 柱上:

  • 一次只能移一个圆盘,它必须位于某个柱子的顶部;
  • 圆盘只能在三个柱子上存放;
  • 任何时刻不允许大盘压小盘。

将这 \(n\) 个盘子用最少移动次数从 \(a\) 柱移动到 \(c\) 柱上,输出每一步的移动方法。

说明

输入

一个整数 \(n\),表示盘子的数量。

输出

输出若干行,每一行的格式是 "步数.Move 盘子编号 from 源柱 to 目标柱"。

样例 1

输入

3

输出

1.Move 1 from a to c
2.Move 2 from a to b
3.Move 1 from c to b
4.Move 3 from a to c
5.Move 1 from b to a
6.Move 2 from b to c
7.Move 1 from a to c

数据范围限制

\(1 \leq n \leq 20\)

来源

基础篇例1.12

信息

ID
1069
难度
(无)
分类
(无)
标签
(无)
递交数
0
已通过
0
通过率
?
上传者