shiritori - しりとり (Shiritori) 解説
by
t9unkubj
\(100\) 頂点 \(N\) 辺の,辺に整数ラベルのついた有向グラフにおいて,通った順に辺を並べた数列が最小になるようなオイラー路を見つけるという問題です.
この記事 を見れば答えはほとんどわかるので解答がわからない方はまずご覧ください.
オイラー路が存在するためには明らかに次数が正である頂点同士で連結である必要があります.あとは上の記事にあげた条件を満たせばよいです.
辺の最初 \(2\) 文字の接頭辞は頂点によって決まることから始点は次数が正である頂点であって,最小であるものを選べばよいです.また,たどる辺の順番は貪欲に選べばよいです.(そのように選んでもオイラー路が存在する条件を満たしているため)計算量は頂点数を \(K\) として \(O(K+N\log N)\) です.
投稿日時:
最終更新: