#1805. 汉诺塔

汉诺塔

题目背景

汉诺塔问题源自印度一个古老的传说,印度教的“创造之神”梵天创造世界时做了 3 根金刚石柱,其中的一根柱子上按照从小到大的顺序摞着 64 个黄金圆盘。梵天命令一个叫婆罗门的门徒将所有的圆盘移动到另一个柱子上,移动过程中必须遵守以下规则

  • 每次只能移动柱子最顶端的一个圆盘;
  • 每个柱子上,小圆盘永远要位于大圆盘之上;

题目描述

请你写一个递归程序,输出挪圆盘的过程。(假设要将圆盘从 A 柱子上挪到 C 柱子上。)

输入格式

输入一个数字 nn,表示需要挪动的圆盘数量。

输出格式

第一行输出一个数字,表示需要挪动圆盘的步数。

之后输出若干行,每一行表示一次挪圆盘的步骤。

样例 #1

样例输入 #1

2

样例输出 #1

3
A->B
A->C
B->C

提示

【数据范围】

1n101\le n \le 10