差分约束&最短路小结

差分约束系统是特殊不等式组的求解方法,通过转化为图论中的单源最短路径或最长路径问题来解决。求最大值时转化为<=不等式,利用最短路算法;求最小值时转化为>=不等式,用最长路算法。无解的充分必要条件是存在正环(最长路)或负环(最短路)。若图不连通,则需添加超级源以约束所有节点。
摘要由CSDN通过智能技术生成

差分约束&最短路

什么是差分约束

​ 如果一个系统由n个变量和m个约束条件组成,形成m个形如ai-aj≤k的不等式(i,j∈[1,n],k为常数),则称其为差分约束系统(system of difference constraints)。亦即,差分约束系统是求解关于一组变量的特殊不等式组的方法。

求解差分约束系统,可以转化成图论的单源最短路径(或最长路径)问题。

例子:参考http://tsreaper.is-programmer.com/posts/180182

来考虑这个不等式:a-b ≤ c。

我们知道,对于最短路,有这样的不等式:dis(u) ≤ dis(v) + len(v,u) (v,u是由一条长度为len(v,u)的有向边连接的两个点,dis(v)与dis(u)表示起点到达v或u的最短路)。

变形得:dis(u) - dis(v) ≤ len(v,u),与a-b ≤ c是不是非常相似?

所以,对于形如a-b ≤ c的不等式,我们可以从点b向点a连接一条长度为c的边。这样,我们就可以把不等式转换为图。

求满足条件的最大值该如何建图?求满足条件的最小值呢?

差分约束求最大值时需要将不等式化为<=的格式,因为这样的不等式满足图论中最短路的性质,所以接下来用最短路来求。求最小值需要将不等式化为>=的格式,因为这样的不等式满足图论中最长路的性质,所以接下来用最长路来求。

差分约束解的存在性

最长路为什么正环代表该约束条件下无解?

最长路中不等式是>=的形式。

加入现在有a->b为$w_1 , b − &gt; a 为 ,b-&gt;a为 b>aw_2 , 这 是 一 个 正 环 , 即 满 足 , 这是一个正环,即满足 ,w_1+w_2>0 , 把 边 转 化 为 不 等 式 就 是 ,把边转化为不等式就是 b>=a+w_1,a>=b+w_2$ ,整理一下就是 0 &gt; = w 1 + w 2 0&gt;=w_1+w_2 0

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值