# !/usr/bin/env python3
# -*- coding: utf-8 -*-

#** 练习
''' 
汉诺塔的移动可以用递归函数非常简单地实现
请编写move(n, a, b, c)函数，它接受参数n，表示3个柱子A、B、C中第1个柱子A的盘子数量，然后打印出所有盘子从A借助B移动到C的方法
'''
# 思考
# 分三步（代码参照了网络 还有点晕）
# 1、把n-1个盘子先a搬到b
# 2、把n(最底下的盘子)a搬到c
# 3、把n-1个盘子从b搬到c

def move(n, a, b, c):
    if n==1:
        print(a,'-->移动到1',c)
    else:
        move(n-1, a, c, b)  # 将n-1个盘子从a移动到b(此时c为中间柱)
        print(a,'-->移动到2',c) # 将最大的盘子从a移动到c
        move(n-1, b, a, c)  #将n-1个盘子从b移动到c(此时b为中间柱)
        
move(100, 'A', 'B', 'C')