chyam

[프로그래머스 Lv3, python] - 여행경로 본문

프로그래머스/LV3

[프로그래머스 Lv3, python] - 여행경로

chyam_eun 2026. 5. 10. 12:58

https://school.programmers.co.kr/learn/courses/30/lessons/43164

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

def solution(tickets):
    tickets.sort() # 정렬해두기 
    visited = [False] * len(tickets)

    def dfs(cur, path): # 현재 목적지
        # 모든 티켓 사용
        if len(path) == len(tickets) + 1:
            return path

        for i in range(len(tickets)):
            start, end = tickets[i] # 출발지, 목적지

            if not visited[i] and start == cur: 
                visited[i] = True

                result = dfs(end, path + [end])

                if result:   # 정답 찾으면 바로 반환!!
                    return result

                visited[i] = False

    return dfs("ICN", ["ICN"])