#1. 判斷x行是否有皇后
for i in range(0, y):
if board[x][i] == 1:
return False
這里判斷x行是否有皇后,其實可以省略這一步驟,在put_queen方法里對step行遍歷的時候,即使step行前面的元素有放過皇后,在遞歸完成時也已經恢復了現場,所以在判斷(x,y)位置是否可以放皇后時,x行內y位置之前也不會出現皇后
for i in range(0, y):
if board[x][i] == 1:
return False
這里判斷x行是否有皇后,其實可以省略這一步驟,在put_queen方法里對step行遍歷的時候,即使step行前面的元素有放過皇后,在遞歸完成時也已經恢復了現場,所以在判斷(x,y)位置是否可以放皇后時,x行內y位置之前也不會出現皇后
2020-02-18
import functools
@functools.lru_cache(None)
def fib(n):
if n<2:
return n
return fib(n-1)+fib(n-2)
可以試下這個裝飾器
@functools.lru_cache(None)
def fib(n):
if n<2:
return n
return fib(n-1)+fib(n-2)
可以試下這個裝飾器
2020-02-14
第五個月的數量老師算錯了吧,應該是10只。也就是說這個問題還是斐波那契數列問題中的 f(n) = f(n-1) + f(n-2)的情況,而不是 f(n) = f(n-1) + f(n-3)的情況。
2019-12-16