差分约束系统
差分约束系统是一种特殊的不等式组,它包含N个变量x 1 ......x n ,以及M组限制条件,每组限制条件都是由两个变量作差 小于一个常数组成的,形如X 1 -X 2 <=C k (其中C k 为常数)。这类问题我们可以建一个有向图用最短路来解决。 对于X 1 -X 2 <=C k 我们只需要从点1向点2连一条有向边,边权为C k ,从任一点开始跑最短路,如果不存在负环,那么单源 最短路的解即为原题的一组解。 试想为什么会这样? 果要求xi − xj ≤ a,则建立一条从pj 到pi 长度为a 的边 以任意一点为起点求单源最短路,则一定有di − dj ≤ a 所以保证了约束条件成立,如果存在负环那最短路是无限短,原题就无解。 来源: https://www.cnblogs.com/Hoyoak/p/11414333.html