小编abo*_*fti的帖子

用python解决迷宫

我正在尝试制作一个迷宫求解器,它正在工作,除了用"o"标记的路径,我希望它标有">","<","v","^"取决于路径的方向.这是它解决迷宫的代码的一部分:

 def solve(self,x,y):
    maze = self.maze

    #Base case  
    if y > len(maze) or x > len(maze[y]):
        return False

    if maze[y][x] == "E":
        return True 

    if  maze[y][x] != " ":
        return False


    #marking
    maze[y][x] = "o"        

    #recursive case
    if self.solve(x+1,y) == True :  #right
        return True
    if self.solve(x,y+1) == True :  #down
        return True     
    if self.solve(x-1,y) == True :  #left
        return True     
    if self.solve(x,y-1) == True :  #up
        return True     

    #Backtracking
    maze[y][x] = " "
    return False    
Run Code Online (Sandbox Code Playgroud)

这是一个未解决的迷宫的例子:

####################################
#S#  ## …
Run Code Online (Sandbox Code Playgroud)

python recursion maze

8
推荐指数
1
解决办法
9156
查看次数

当使用.backward作为方向时,Calendar.nextDate()表现得非常奇怪.仅适用于该月的最后一天

在我的应用程序中,我需要获取前一个凌晨4点,而不是当前日期的凌晨4点.
例如:

  • 如果它是March 05, 10:00 am那么我应该期望回来:March 05, 4:00 am
  • 如果它是March 05, 02:00 am那么我应该期望回来:March 04, 4:00 am

实现我正在使用的Calendar.nextDate.除了每个月的最后一天,它适用于本月的每日.

这是一个快乐路径的例子,它按预期工作:

let components = DateComponents(hour: 4, minute: 0, second: 0)

let date =  Calendar.current.date(from: DateComponents(year: 2018,
                                                       month: 03, 
                                                       day: 05, 
                                                       hour: 13, 
                                                       minute: 25, 
                                                       second: 0))!
let result = Calendar.current.nextDate(after: date, 
                                       matching: components,
                                       matchingPolicy: .nextTime,
                                       direction: .backward)
Run Code Online (Sandbox Code Playgroud)

输出:

date = "Mar 5, 2018 at 1:25 PM"
result = "Mar 5, 2018 at 4:00 AM"
Run Code Online (Sandbox Code Playgroud)

这是黑暗悲伤路径,如果它确实的例子 …

macos calendar ios swift swift4

7
推荐指数
1
解决办法
259
查看次数

标签 统计

calendar ×1

ios ×1

macos ×1

maze ×1

python ×1

recursion ×1

swift ×1

swift4 ×1