Open null0124 opened 4 years ago
ありがとうございます!
あたりをとりあえず教えてくれると助かります
コメントありがとうございます!
1, 単純グラフで大丈夫だと思うので、そうです 2, 無向で早くなる話初耳なんですが(調べます)、有向でいいかなという気持ちです。特にこだわりは無いです 早いアルゴリズムは https://qiita.com/hotman78/items/42534a01c4bd05ed5e1e などがあるらしいのですが、こちらで simple path は難しいっぽいです 3, simple path です
追加で、重みは 0 以上です
不明瞭な質問申し訳ないです、1で聞きたかったのは、辺数が1000か100,000かということでした(多分1000ですよね?)
この問題だと自己ループはないにしても多重辺は入れたい感じがします。
コメント送ったあとに意図に気づきました() 想定 N - 1 <= M <= 10^3 です 多重辺確かにあった方がいいなということで、そうした場合 M の上限を増やしたほうがよかったりしますか?(多重辺作問した事がなく、その場合の辺数の相場が分かりません。特にないということであれば 10^3 です)
頂点数, 辺数, Kは最終的には実行時間見て調整したいところではありますが、N = Mで問題ないです!(2 * N = M ぐらいに設定する人もいますが、ぶっちゃけwriterの趣味嗜好だと思っています)
以下にいくつか些細なコメントをしておきます
問題名/ID: どうやらk-shortest pathと書いたときに同じ頂点を通れるかどうかが曖昧っぽいです(https://en.wikipedia.org/wiki/K_shortest_path_routing#Loopless_variant )。pathって書いたらsimple pathだろとは思うのですが、(K Shortest Loopless Paths / k_shortest_loopless_paths)とかにしてわかりやすくしてほしいです
入力形式: グラフ部分については https://judge.yosupo.jp/problem/shortest_path と同じがいいと思います
出力形式: パスの個数が足りなかったら-1を出力を想定していると思います、それで大丈夫です。
コメントありがとうございます!諸々了解しました。 その上で、いくつか質問 (相談) させてください
議論はひとまず終わっているように見えるので、作業者募集です。
初 open issue です 問題ID: k_shortest_simple_path 問題名: K Shortest Simple Path
想定アルゴリズム: Yen's Algorithm 参考資料: https://yukicoder.me/problems/no/1069
問題概要
N 頂点 M 辺重み付き有向グラフが与えられるので、s -> t の path のコストを小さい順に k 個出力。存在しない場合は -1 を出力
入力
出力
制約
N <= 10^3 1 <= M <= 10^3 0 <= c <= 10^9 k <= 10