嘿所以我有一个图表,例如3个边进入节点,3个边出来,但是如果特定的进入边有容量,我只需要激活出边。例如,如果我们有:
A - > Ñ
B - > Ñ
C - > Ñ
N - > N'#39;
N'#39; - >甲'
N'#39; - > B'
N'#39; - > C'
我只希望流经A'如果A有流动,并流过B'如果B有流等等。
基本上它在边缘A,B,C和I上的容量限制器最初不能限制它们的容量。
如果多次出现这种情况,我如何将此约束添加到最大流量并解决给定图形的最大流量图问题?
编辑:我最后也不能限制他们的能力,因为A',B'和C'稍后在图中使用,所以我不能移动N和N'到最后并迫使合并后的能力减少。
答案 0 :(得分:0)
如果目标是限制组合流量,将a,b和c保留为n-> n'的容量,则只需将n个节点移动到图表的另一侧即可。换句话说,您可以简单地通过从a,b和c获取流量并将其直接(或通过其素数对)引导到n,然后从n直接(或再次通过n')引导到您的接收器来模拟您的问题。 / p>
编辑:您也可以在a / b / c之前放置n以获得相同的效果。
编辑2:如果您正在讨论ford fulkerson的实现,理论上您可以过滤掉列出扩充路径时不需要的路径。例如,当您的程序识别出可能的扩充路径时,如果它离开流a-> n不等于n' - > a'等等,则不要沿着它扩充。