본문 바로가기
프로그래머스/Lv.3

여행경로 - Python, dfs, stack

by 아찌방 2024. 11. 18.

 

 

주소

 

 

풀이 - 나의 생각

 

 

 

 

코드

 

from collections import defaultdict

def solution(tickets):
    # 출발지별 도착지 정리
    routes = defaultdict(list)
    for start, end in tickets:
        routes[start].append(end)
    # 출발지별 도착지 알파벳 순으로 정렬
    for key in routes:
        routes[key].sort(reverse=True)
    print(routes)
    # 탐색
    path = []
    stack = ["ICN"]
    
    while stack:
        while routes[stack[-1]]:
            print(routes[stack[-1]])
            stack.append(routes[stack[-1]].pop())
            print(routes[stack[-1]])
        path.append(stack.pop())
    return path[::-1]

 

 

 

 

 

 

 

다음에 또 봐요

 

728x90