Pythonでハノータ問題を解決
3475 ワード
'''
1、 ,
: , , ( )
( )
2、 :
n! = n * (n-1)!
……
9! = 9 * 8!
8! = 8 * 7!
7! = 7 * 6!
6! = 6 * 5!
5! = 5 * 4!
4! = 4 * 3!
3! = 3 * 2!
2! = 2 * 1!
1! = 1
: n! = n * (n-1) * (n-2) * …… * 3 * 2 * 1
'''
def hannoi(n,x,y,z):
if n==1: # 2.4
print(x,'-->',z)
else:
hannoi(n-1, x, z, y) # 2.1
print(x,'-->',z) # 2.2
hannoi(n-1, y, x, z) # 2.3
n=int(input(" :"))
hannoi(n, "X", "Y", "Z")
'''
1、 :1··2··3··4··5··6·· ··n
: 、 、
2、 n , :
2.1 n N,
2.2 n
2.3 N ( : , )
2.4 2.3 ( , )
n = 1 ,print (x ,'-->', z)
3、 , ,
'''