Змея и лестницы: как показать кубики, которые мы выбрали в задаче о кратчайшем пути змей и лестниц?

#python

#python

Вопрос:

Входные данные представлены двумя вещами: первая — ‘N’, которая представляет собой количество ячеек на данной доске, вторая — массив ‘move [0 … N-1]’ размера N. Входное перемещение [i] равно -1, если нет змеи и лестницы из i, в противном случаеmove [i] содержит индекс ячейки назначения для змеи или лестницы в i. может кто-нибудь сказать мне, как показать кубики, которые мы выбрали по кратчайшему пути в этом коде?прямо сейчас он просто показывает минимальное время, когда мы бросаем кости с помощью BFS и очередей, и я хочу знать, как показать кубики, которые мы выбираем. Я был бы признателен за любую помощь.

 # Python3 program to find minimum number 
class QueueEntry(object): 
def __init__(self, v = 0, dist = 0): 
    self.v = v 
    self.dist = dist
def getMinDiceThrows(move, N):
  # The graph has N vertices. Mark all 
  # the vertices as not visited 
  visited = [False] * N
  # Create a queue for BFS 
  queue = []
  # Mark the node 0 as visited and enqueue it 
  visited[0] = True
  # Distance of 0't vertex is also 0 
  # Enqueue 0'th vertex 
 queue.append(QueueEntry(0, 0))
 # Do a BFS starting from vertex at index 0 
 qe = QueueEntry()  # A queue entry (qe) 
 while queue:
    qe = queue.pop(0)
    v = qe.v # Vertex no. of queue entry 
    # If front vertex is the destination 
    # vertex, we are done 
    if v == N - 1:
        break

    # Otherwise dequeue the front vertex  
    # and enqueue its adjacent vertices  
    # (or cell numbers reachable through 
    # a dice throw) 
    j = v   1
    while j <= v   6 and j < N:
        # If this cell is already visited, 
        # then ignore 
        if visited[j] is False:
            # Otherwise calculate its  
            # distance and mark it  
            # as visited 
            a = QueueEntry()
            a.dist = qe.dist   1
            visited[j] = True

            # Check if there a snake or ladder 
            # at 'j' then tail of snake or top 
            # of ladder become the adjacent of 'i'
            a.v = move[j] if move[j] != -1 else j
            queue.append(a)
        j  = 1
# We reach here when 'qe' has last vertex 
# return the distance of vertex in 'qe 
return qe.dist
 

Комментарии:

1. Добро пожаловать в Stackoverflow . Помоги нам помочь тебе. Пожалуйста, расскажите немного о том, что должен делать ваш алгоритм и как он работает, чтобы мы могли помочь вам лучше.

2. Пожалуйста, проверьте ваш отступ и покажите в коде, где вы «бросаете кубик», так как нет ничего, указывающего, какой конкретный фрагмент кода вы пытаетесь сохранить / отобразить