【图论】差分约束

一.情景导入

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)

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


四.差分约束

这个即是差分约束的模型

注意:

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

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


五.例题:

六.参考代码

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

相关推荐
czlczl200209259 分钟前
算法:组合问题
算法·leetcode·职场和发展
CoderYanger12 分钟前
优选算法-字符串:63.二进制求和
java·开发语言·算法·leetcode·职场和发展·1024程序员节
charlie11451419119 分钟前
深入理解C/C++的编译链接技术6——A2:动态库设计基础之ABI设计接口
c语言·开发语言·c++·学习·动态库·函数
Cx330❀22 分钟前
C++ STL set 完全指南:从基础用法到实战技巧
开发语言·数据结构·c++·算法·leetcode·面试
zmzb010327 分钟前
C++课后习题训练记录Day33
开发语言·c++
Want5951 小时前
C/C++贪吃蛇小游戏
c语言·开发语言·c++
阿昭L2 小时前
堆结构与堆排序
数据结构·算法
2***57422 小时前
人工智能在智能投顾中的算法
人工智能·算法
草莓熊Lotso2 小时前
《算法闯关指南:动态规划算法--斐波拉契数列模型》--01.第N个泰波拉契数,02.三步问题
开发语言·c++·经验分享·笔记·其他·算法·动态规划
草莓熊Lotso3 小时前
Git 分支管理:从基础操作到协作流程(本地篇)
大数据·服务器·开发语言·c++·人工智能·git·sql