私はいくつかのアプローチを試みましたが、それらはすべて行き止まりに終わりました。質問:
G=(V,E) が与えられた場合、すべての頂点が赤または青に着色された重み付けされていない有向グラフ。V から頂点 s と t があるとします。s と t の間で最も赤い頂点を保持しないパスを見つけるアルゴリズムを説明してください。アルゴリズムを説明し、証明し、その複雑さを示します。
私は2つのアプローチを考え、両方を破棄しました:
- 色でソートされた隣接リスト (青が最初、赤が最後) を使用し、DFS を実行する - 悪い考え
- 赤の頂点からの各エッジの重みを 2 に、青の頂点から 1 に設定し、Dijkstra を実行します - 反例が見つかりました
正しい方向への助けをいただければ幸いです。完全な回答ではなく、ヒット/ヒントを得ることを好みます。