問題建模
有向圖,源點 1,匯點 n。邊有摧毀成本。國 1 可新增或修改一條邊(2~n-1 之間),使其不可摧毀(容量 INF)。國 2 以最小總成本切斷 1 到 n 的連通。求國 1 能迫使國 2 支付的最大最小割值。
核心洞察
- 先求原圖最小割,將頂點分為 S 集(可從源點達到)和 T 集(可達匯點)。
- 修改/新增邊若兩端點同屬 S 或同屬 T,最小割不變。
- 唯有邊從 S 指向 T 時,將其容量設為 INF 可能增大最小割。
- 枚舉所有 S→T 可能邊(含原有邊修改與新增邊),每次跑最大流取最大值。
算法流程