이 포스팅은 프로그래머스 시리즈 28 편 중 19 번째 글 입니다.
목차
풀이
BFS로 풀었는데, 배열이 reference로 전달되어 애먹었다.
Code
from collections import deque
def solution(tickets):
answers = []
q = deque()
used = [False for _ in tickets ]
answer = ["ICN"]
q.append(["ICN", used, answer])
while q:
start, used, answer = q.pop()
if all(used):
answers.append(answer)
for i, (s, e) in enumerate(tickets):
if s == start and used[i] == False:
_used = used[:]
_answer = answer[:]
_used[i] = True
_answer.append(e)
q.append([e, _used, _answer])
# print(answers.sort())
answers.sort()
return answers[0]