交作业
Topic sourcedef move(n,a,b,c):
if n==1:
return(a,'->',c)
else:
move(n-1,a,c,b) #将前n-1个盘子从x移动到y上
move(1,a,b,c) #将最底下的最后一个盘子从x移动到z上
move(n-1,b,a,c) #将y上的n-1个盘子移动到z上
print(move(3,'A','B','C'))
求助,为什么我把print放在最后结果只是显示none,还有else是可以省略吗?
- 1
UMeowBing
def move(n,a,b,c): if n == 1: print(a,'->',c) else: move(n-1,a,c,b) move(1,a,b,c) move(n-1,b,a,c) x = (2**n)-1 return x
x = move(4,"a","b","c") print("move steps :", x)
结果: a -> b a -> c b -> c a -> b c -> a c -> b a -> b a -> c b -> c b -> a c -> a b -> c a -> b a -> c b -> c move steps : 15