第二次重新理解差分约束系统
今天通过做题重新理解了差分约束系统,发现以前理解似乎有些错误的地方,首先无论怎样建图都是可行的。只是不同建图方式对应的最短最长路算法不同。首先如果以≥建图,则认为多多少为正的,少多少为前后交换并且负的边权,由此如果存在无解的情况肯定如下所示
a-b≥c(1)
a-b≤z(2)
(2)式变形得 b-a≥-z
因为无解,所以(1)式要求a比b最少远c,(2)式要求a比b最多远z无解肯定是c>z所以c-z>0所以存在正权环,跑最长路就会判断出有正权环所以无解,如果可以等于一个极大值则证明可以取到+∞
≤建图同样。。。
注意
如果求某两点间的最大差值,那么将一个点设为0,然后进行最短路,因为这样每个都是向大的取极限,差值是最大。
如果求最小差值,同理,求最长路,取最小极限、