[アルゴリズム]旅行ルート
1592 ワード
程序旅行路线的问题
:一度に答えられなかったのは、問題を正しく理解できなかったからです.
もんだいぶんせき
:航空券(往復の片道航空券ではありません)は航空券として発行されます.これらの航空券に基づいて「旅行ルート」を制定します.この場合、チケットはICNから出発し、飛行機、飛行機、飛行機でどこかに到着しなければなりません.つまり、途中に航空券がない、換言すれば、A->B->Cに行く場合、A->Bの航空券がない、ということになります.完璧に与えられた.そのため、片道券を元に、旅行経路を順番に並べて返すのが問題です.この場合、可能な旅行ルートが2つを超える場合は、事前の順序で空港を考えるときは、先に前の単語に対応する空港に行くべきです.
私が逃したのは少しです。
もんだいせっけい
問題は
インプリメンテーションコード
answer= ["ICN"]
def recursion(node,d,l):
global answer
if l == 0:
return True
try:
if d[node]:
pass
except:
return
for idx, airport in enumerate(d[node]):
answer.append(airport)
top = d[node].pop(idx)
if recursion(top,d,l-1):
return True
d[node].insert(idx,top)
answer.pop()
def solution(tickets):
d = {}
for el in tickets:
try:
d[el[0]].append(el[1])
except:
d[el[0]] = [el[1]]
for key, val in d.items():
val.sort()
d[key] = val
l = len(tickets)
root = "ICN"
recursion(root,d,l)
return answer
コメント
:問題をよく読む.私はずっと答えています.指紋が短いほど問題が友好的ではありません.深く理解しなければならない.
Reference
この問題について([アルゴリズム]旅行ルート), 我々は、より多くの情報をここで見つけました https://velog.io/@0715yk/Algorithm-여행-경로テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol