class Solution:

    def snakesAndLadders(self, board: List[List[int]]) -> int:
        path = [0]
        for i,row in enumerate(board[::-1]):
            path += row if i%2-1 else row[::-1]
        visit = [-1 for _ in path]
        queue = deque([1])
        visit[1] = 0
        while queue:
            cur = queue.popleft()
            for i in range(1, 7):
                next = min(len(path)-1, cur + i)
                if path[next] != -1:
                    next = path[next]
                if visit[next] == -1:
                    visit[next] = visit[cur] + 1
                    queue.append(next)
        return visit[-1]


그냥 BFS 돌렸음.. 다른 방법 필요없어~

뱀과 사다리 지그재그인거 못 봐서 좀 오래 걸림;