差分约束学习笔记

\[\huge \rm 差分约束 \]


\[\Large \rm 算法简介 \]

\(\quad\)差分约束算法是用来解形如 \(x_1-x_2\leqslant k\) 的若干个方程。

\(\quad\)我们发现可以将方程移项成 \(x_1\leqslant x_2+k\),解方程的时候考虑建图,从 \(x_2\) 向 \(x_1\) 连一条长度为 \(k\) 的边,然后对这张图建一个超级源点,向所有点连一条长度为 \(0\) 的边,最后跑最短路得出的 \(dis\) 就是每个点的一个取值。

\(\quad\)同时,如果有负环则无解。

\(\quad\)时间复杂度 \(\Theta(\rm SPFA).\)

\(\quad\)需要注意的是,最短路求的是以起始点为基准的最大解,而最长路求的是以起始点为基准的最小解。

上一篇:虚树学习笔记


下一篇:戴德金-“连续性和无理数”论文翻译第12页