重み付けされていない有向アシル グラフが与えられた場合、Floyd-Warshall アルゴリズムを適応させて、2 つの頂点間のパスの数をカウントしようとしています。私のコードは現在次のようになっています。
1 から n のすべての k に対して 1 から n のすべての i に対して 1 から n のすべての j に対して Aij = Aij + (Aik * Akij)。
したがって、最小距離を確認して置き換える代わりに、次のことを行っています。
i
( , j
)間のパスのk
数 + ( からのパスのカウント * からのパスi
のカウント)k
k
j
私の最終的な配列には、任意の 2 つの頂点間のパスの数が必要です。
これが 2 つの頂点間の単純なパスの数を与えないことを証明することはできませんが、このアプローチを他の場所で使用する提案はありません。
誰かがこれが失敗する反例を提供できますか?
PS: これは私の宿題ではなく、私が取ったプログラミングの演習です。