问题描述
def isSafe(arr,i,j,visited,n):
if(i<0 or j<0 or i>=n or j>=n or visited[i][j]==True):
return False
return True
def display(arr,n):
for i in range(n):
for j in range(n):
print(arr[i][j],end="")
print()
开始骑士之旅的功能: 我使用计步器从 0 到 n²-1 计算骑士的步数。
基本情况触发显示。
我用计步器初始化数组,然后检查下一个单元格是否安全。
def knightsT(arr,n,c,visited):
if c==((n*n)-1): #Base Case
arr[i][j]=c
display(arr,n)
if c>=n*n:
return
arr[i][j]=c
visited[i][j]=True
iDir=[1,1,-1,2,-2,-2]
jdir=[2,-1]
for k in range(0,8,1):
if isSafe(arr,i+iDir[k],j+iDir[k],n):
knightsT(arr,c+1,visited)
arr[i][j]==0. #Backtracking
visited[i][j]=False #Backtracking
Python 的主要功能
l=[[0]*5 for i in range(5)]
visited=[[False]*5 for i in range(5)]
n=len(l)
knightsT(l,visited)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)