【图论】差分约束

一.情景导入

x1-x0<=9 ; x2-x0<=14 ; x3-x0<=15 ; x2-x1<=10 ; x3-x2<=9;

求x3-x0的最大值;


二.数学解法

联立式子2和5,可得x3-x0<=23;但式子3可得x3-x0<=15。所以最大值为15;


三.图论

但式子多了我们就不好解了,或者说在计算机中怎么解呢?

我们可以想到,不妨把式子转为图的形式。我们令x0-->x1的边表示为x1-x0<=边权值。

则以上式子可以画图为:

这边,x3-x0可以为:(即x3-x0<=15)

也可以为:(即x3-x0<=28)

还可以为 :(即x3-x0<=25)

所以我们取最短路径即可!


四.差分约束

这个即是差分约束的模型

注意:

当出现负环的情况,我们可知,式子是无解的!

当要求的两个点没有联通时,可知这两个式子没有约束!所有解都有可能!


五.例题:

六.参考代码

过一天把代码贴上来,并加上注释!

相关推荐
白狐_7986 小时前
408 数据结构|红黑树 vs AVL:高频考点、易错判断与可能出题方式
数据结构·算法
aqiu1111116 小时前
【C++ 代码分析与重构】常见 DFS 逻辑错误解析与修正
c++·重构·深度优先
zuozong_7 小时前
C++类与对象
开发语言·c++·算法
hansang_IR7 小时前
【代码】分层最短路模板
c++·算法·最短路
暖焰核心7 小时前
C++模板进阶——特化全解
javascript·c++·jquery
励志不掉头发的内向程序员7 小时前
【LibreCAD 2D架构】从两个坐标到图形实体:RS_ActionDrawLine如何创建RS_Line
开发语言·c++·qt·学习·系统架构
啊阿狸不会拉杆7 小时前
《计算机网络-自顶向下方法》5.2 路由选择算法 读书笔记
计算机网络·算法·路由
rannn_1117 小时前
【力扣hot100】多维动态规划|62、64、5、1143、72
算法·leetcode·动态规划
j7~7 小时前
【C++】C++的类型转换--详解
c++·static_cast·const_cast·rtti·c语言类型转换·c++强制类型转换
吴声子夜歌7 小时前
ApacheCommons——commons-math3(科学计算与线性代数)(一)
java·线性代数·算法·apache