差分约束系统

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
❖ 若图中有负权回路,即 统无可行解
❖ 否则,有可行解,解为
,则系
❖ G = (V, E引)是理加权三有角 向图形,任不取等一点式s,则对
于所有(u,v)∈E,有如下不等式成立:
❖ 证明:反证法
1。不存在对负权结回论路的证明(1)
考虑约束条件

v 2。存在负对权回结路论,不的妨证设为明c (2)
❖ 很久以前,在某个引国例家,王国子王出生了
❖ 但是,王子有一点弱智…… ❖ 老国王去世后,王子登基了 ❖ 但是,大臣们不买王子的账,要弹劾他…… ❖ 皇后向ACM班的你求助——只有你才能救他! ❖ 救救孩子啊~~~
引例 国王
我们令
引例 国王
,i=1,2,…,n 则
原问题转化为一引个例关于国的王不等式组有没
次成功松弛,按照成功松弛的次数进行归纳 ❖(s,v) (s,u)+w(u,v) d[u]+w(u,v) =d[v]
Bellman-Ford
如果没有从s可以到达的负权回路,那么在 |V|-1迭代后对于所有的d[v]有: d[v]=(s,v)
❖s v[1] v[2] ... v ❖第i次迭代后d[v[i]]= (s,v[i])且不变(引理)
如果存在从s可达的负权回路,则一定会有 某个(u,v), d[v]>d[u]+ω(u,v)
稍微修改一下 的定国义:王
对映 ,并添加点
国王 Hale Waihona Puke Baidu 构约束图,利用Bellman-Ford求解
v 若存在可行解,则数列元素由下式给出:
i=1,2,…,n
区间(SWERC2002)
❖给你n个边界是整数的闭区间 和n 个整数
Negative cycle checking for each v V do if d[v]> d[u] + w(u,v) then no solution
Bellman-Ford
❖ 时间复杂度: O(VE) ❖ 正确性证明:
引理: d[v] (s,v)
❖数学归纳法 ❖迭代前显然正确 ❖若迭代时有 d[v] = d[u] +w(u,v)成立,则称一
❖ 例如,N=6,A0=1,B0=2,L0=3,A1=1,B1=1,L1=2,则 存在一个满足上述所有条件的01串S=010101。
1。寻找部分和 2。构造约束图
总结
3。利用Bellman-For总d求结解,若有解则
若将 换为 ,则利用Bellman-Ford求最长路 即可
参考资料
❖ 算法导论(第二版)
❖ 如何求最短路差呢分?约束系统
Dijkstra Bellman-Ford …
Bellman-Ford
for each v V do d[v] ; d[s] 0 Relaxation
for i =1,...,|V|-1 do for each edge (u,v) E do d[v] min{d[v], d[u]+w(u,v)}
有整数解的问题
如何求解呢?
差分约束系统
差分约束系统
❖ 差分约束系统:
若一个系统由n个变量和m个约束条件组成, 且每个约束条件有如下形式,则称为一个有n个 变量和m个约束条件的差分约束系统。
差分约束系统
矩阵形式
约束图
约束图
约束图
若存在约束条件
则从 向 引一条边
向每个点引一条边
约束图
结论
❖ NOI1999 ❖ SWERC2002 ❖ Central Europe 1997
❖所有数在[1,m]内 ❖请你找到一个整数集合Z,使得
1。|Z|最小 2。
❖ 定义: 区间(SWERC2002)
区间(SWERC2002)
差分约束系统在实际中的应用
x1 x2 x3 x4 x5 x6 x7 x8
练习(NOI99 01串)
❖ 给定7个整数N,A0,B0,L0,A1,B1,L1,要求设计一个 01串S=s1s2…si…sN,满足:
si=0或si=1,1<=i<=N; 对于S的任何连续的长度为L0的子串sjsj+1…sj+L0-
1(1<=j<=N-L0+1),0的个数大于等于A0且小于等于B0; 对于S的任何连续的长度为L1的子串sjsj+1…sj+L1-
1(1<=j<=N-L1+1),1的个数大于等于A1且小于等于B1;
相关文档
最新文档