def hannuotower(num,a,b,c):
# 参数 num代表的是盘子 a b c分别代表的是A柱,B柱,C柱
# 第一个条件 基线条件
# 如果只有一个盘子 A -- C
if num == 1:
print('第1个盘子从',a,'->',c)
else:
# 第二个条件 递归条件
# num >= 2的情况
# 2.1 先把最上面的盘子 A-- B 借助C柱
hannuotower(num-1,a,c,b)
# 2.2 把最下面的盘子 A--C
print('第',num,'个盘从',a,'->',c)
# 2.3 把B柱上的盘子 B--C
hannuotower(num-1,b,a,c)
hannuotower(3,'A','B','C')
结果
第1个盘子从 A -> C
第 2 个盘从 A -> B
第1个盘子从 C -> B
第 3 个盘从 A -> C
第1个盘子从 B -> A
第 2 个盘从 B -> C
第1个盘子从 A -> C
本文地址:https://blog.csdn.net/MiStonebridge/article/details/107116111
如对本文有疑问, 点击进行留言回复!!
老猿学5G:融合计费场景的离线计费会话的Nchf_OfflineOnlyCharging_Release释放操作
老猿学5G扫盲贴:中国移动5G融合计费漫游计费架构和路由方案
老猿学5G扫盲贴:与用户和终端相关的名词UE、SUPI、GPSI、PEI
三星以核心技术优势持续更新折叠手机,华为缺乏自主技术无力应对
基于OpenCV+Python的均值滤波,高斯滤波,中值滤波,双边滤波
网友评论