
i = 0 #定义步骤总数
def HanNuo(n,x,y,z):
global i
i = i + 1 #计算步骤数
if n == 1:
print(x,'-->', z)
else:
HanNuo(n-1,x,z,y) #将上面n-1层搬到Y上
print(x,'-->',z) #将最后一层搬至Z上
HanNuo(n-1,y,x,z) #将Y上n-1层搬至Z上
n = int(input("请输入汉诺塔的层数\n"))
HanNuo(n,'a','b','c')
print(i)
网友评论