差分约束系统的求解过程

差分约束系统的求解过程

求解过程:

1、 问题条件转换

条件转换成下面一组不等式 x1 - x2 <= b1 x2 - x3 <= b2 x3 - x1 <= b3 ...................

2、 求解:

1) 要判断是否存在这样的x1, x2, x3……满足所有不等式,则以任意为源点,求出所有点的最短路(即可作为xi的值)。(因为边权可能为负,用Bellman-ford求最短路,如果存在负圈则无解);

2) 要求xn – x1的最大值,则初始化为极大,做x1xn的最短路;

3) 要求xn – x1的最小值,则初始化为极小,做x1xn的最短路

3、注意
不等式一定是小于等于或者大于等于。

你可能感兴趣的:(差分约束系统的求解过程)