约束rmq_差分约束
它们的差是不变的,
那么这个差分
约束系统中的所有不等式都不会被破坏。
差分约束系统的解法利用到了单源最短路径问题中的三角形不等式。
即对于
任何一条边
u -> v
,都有:
d(v)
<=
d(u)
+
w(u,
v)
其中
d(u)
和
d(v)
是从源点分别到点
u
和点
v
的最短路径的权值,
w(u, v)
是边
u -> v
的权值。
显然以上不等式就是
d(v) - d(u) <= w(u, v)
。这个形式正好和差分约束
系统中的不等式形式相同。于是我们就可以把一个差分约束系统转化成一张图,
每个未知数
Xi
对应图中的一个顶点
Vi
,把所有不等式都化成图中的一条边。对
于不等式
Xi - Xj <= c
,把它化成三角形不等式:
Xi <= Xj + c
,就可以化成
边
Vj
->
Vi
,权值为
c
。最后,我们在这张图上求一次单源最短路径,这些三角
形不等式就会全部都满足了,因为它是最短路径问题的基本性质嘛。
话说回来,
所谓单源最短路径,
当然要有一个源点,
然后再求这个源点到其
他所有点的最短路径。
那么源点在哪呢?我们不妨自已造一个。
以上面的不等式
组为例,我们就再新加一个未知数
X0
。然后对原来的每个未知数都对
X0
随便加
一个不等式
(这个不等式当然也要和其它不等式形式相同,
即两个未知数的差小
约束rmq_差分约束相关推荐
- HDU1811 Rank of Tetris 拓扑排序+并查集 OR 差分约束最短路+并查集
题目链接 题意:就是给你一堆关系,看能不能排出个确定的顺序 做法: 1. 拓扑排序+并查集 应该很容易想到的一种思路,大于小于建立单向边.对于相等的呢,就把他们缩成一个点.就用并查集缩成一个点就行了 ...
- HDU3440(差分约束+SPFA算法)
题意:两栋房子之间的最大距离为D,也就是A-B<=D,现在求出最矮和最高房子之间的最大距离 思路:差分约束+SPFA算法: 当问题可以转化为形如一组 xi‑x'i<=yi 或一组 xi‑x ...
- HDU1531(差分约束+Bellman_ford)
题意:给出一个序列Si = {aSi, aSi+1, ..., aSi+ni} 和其子序列S = {a1, a2, ..., an}:在给出序列的约束条件: aSi + aSi+1 + ... + a ...
- poj3159(差分约束)
题意:其实题目要求的就是这个B-A<=c,所以对应单源最短路径中的d[v]>d[u]+e[u][v] 关于差分约束: 当问题可以转化为形如一组 xi‑x'i<=yi 或一组 xi‑x ...
- poj1364(差分约束+Bellman-ford)
题意:给出一个序列Si = {aSi, aSi+1, ..., aSi+ni} 和其子序列S = {a1, a2, ..., an}:在给出序列的约束条件: aSi + aSi+1 + ... + a ...
- poj1201(差分约束+SPFA)
看到这道题,其实就是和poj1716是差不多的 题意:给出n个闭整数区间[ai,bi]和n个整数C1,.,cn.计算具有区间[ai,bi]的至少ci公共元素的整数集Z的最小大小,对于每一个i=1,2, ...
- poj3169(差分约束+SPFA)
题意:FJ有N头牛,这些牛都站在一条直线上等待,但是现在给出了一些条件: 1.首先列出哪些牛之间彼此喜欢,以及之间的最大距离,也就是A-B<=X 2.随后列出哪些牛之间彼此不喜欢,以及之间的最小 ...
- poj1716(差分约束+SPFA)
题意:整数间隔[a,b],a<b,是以a开头和以b结尾的所有连续整数的集合.在包含至少两个不同整数的集合中找到每个间隔的最小元素数. 思路:采用差分约束算法:当问题可以转化为形如一组 xi‑x' ...
- 差分约束问题 ---- 2019ccpc哈尔滨A. Artful Paintings[二分+差分约束+建图剪枝]
题目链接 题目大意: 有N≤3e3N≤3e3N≤3e3个格子,你可以任意给每个格子染色,但是要满足M≤3e3M≤3e3M≤3e3限制条件,限制条件有两种类型: 区间[l,r][l,r][l,r]中被染 ...
最新文章
- R语言搭建炫酷的线上博客系统
- win32 api setwindowlong 第2个参数_第 6 篇:分页接口
- C++#define的用法(含特殊)
- 如何零基础入门FPGA?这篇文章让你吃透!
- 用c语言写出一个榜单程序,C语言依然位居榜单前列,依然值得程序员学习
- 任正非:将来华为岗位分三类 职员类岗位不涉及末位淘汰
- 基于 TCP Socket 的服务器与客户端的简单连接
- Redis学习(5)-常用命令
- php配置了扩展为什么不生效,php安装扩展模块后,重启不生效的原因及解决办法...
- HDU 5879 Cure -2016 ICPC 青岛赛区网络赛
- 对COM组件的调用返回了错误HRESULT E_FAIL
- 技术团队管理:技术分享
- 监控工具Zabbix之原理及部署
- 二进制拆弹(20181023-20181026)
- 综合日语第一册第六课
- Linux tac命令
- 我们要做一个靠谱的人~以信而立天下
- RHCSA之Linux系统简介
- 物联网实训室建设方案(2020完整版)
- rsync实现断点续传