1

ウィキペディアで最大フローの問題について読んでいました。私は、問題の説明で s が t と等しくなる (ソースがシンクと等しくなる) ことを許可しているのかに興味がありました。s =t の場合、答えは 0 でなければならないことはわかっています。しかし、この問題を解決するコードを書いているとします。私のコードでこの特殊なケースを処理する必要がありますか、それとも問題の説明でこれが禁止されていますか?

4

1 に答える 1

2

s = tの場合、プッシュできるフローの量を制限する厄介な容量制約のあるアークを使用する必要がないため、sからtに無限の量のフローをプッシュできます。

コードがこのケースを処理する必要があるかどうかは、呼び出し元がコードを呼び出している理由と、そのような縮退したケースの見返りとして何を期待しているかに大きく依存します。浮動小数点の無限大を返して、詳細を整理するために呼び出し元に任せるべきだと思います。

于 2013-03-10T22:33:08.053 に答える